From 1da04b96c48cea848c98cb0ec26c9e076ec72b20 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=86=E6=B3=93=E9=BA=9F?= Date: Fri, 22 Jul 2016 20:20:40 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E6=B6=88=E9=99=A4=E7=9A=84=E6=97=B6?= =?UTF-8?q?=E5=80=99=E9=87=8D=E6=96=B0=E8=AE=A1=E7=AE=97=E8=B7=9D=E7=A6=BB?= =?UTF-8?q?=EF=BC=8C=E9=98=B2=E6=AD=A2=E7=AC=AC=E4=BA=8C=E6=AC=A1=E6=8B=96?= =?UTF-8?q?=E6=8B=BD=E7=9A=84=E6=97=B6=E5=80=99=E6=B2=A1=E6=9C=89=E8=BD=A8?= =?UTF-8?q?=E8=BF=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- KYCuteViewDemo/KYCuteView.m | 30 ++++++++++++++++++------------ 1 file changed, 18 insertions(+), 12 deletions(-) diff --git a/KYCuteViewDemo/KYCuteView.m b/KYCuteViewDemo/KYCuteView.m index 5044c1f..9f5a74b 100755 --- a/KYCuteViewDemo/KYCuteView.m +++ b/KYCuteViewDemo/KYCuteView.m @@ -59,6 +59,21 @@ - (id)initWithFrame:(CGRect)frame { } - (void)displayLinkAction { + [self countDistance]; + pointA = CGPointMake(x1 - r1 * cosDigree, y1 + r1 * sinDigree); // A + pointB = CGPointMake(x1 + r1 * cosDigree, y1 - r1 * sinDigree); // B + pointD = CGPointMake(x2 - r2 * cosDigree, y2 + r2 * sinDigree); // D + pointC = CGPointMake(x2 + r2 * cosDigree, y2 - r2 * sinDigree); // C + pointO = CGPointMake(pointA.x + (centerDistance / 2) * sinDigree, + pointA.y + (centerDistance / 2) * cosDigree); + pointP = CGPointMake(pointB.x + (centerDistance / 2) * sinDigree, + pointB.y + (centerDistance / 2) * cosDigree); + + [self drawRect]; +} + +- (void)countDistance +{ x1 = backView.center.x; y1 = backView.center.y; x2 = self.frontView.center.x; @@ -74,19 +89,8 @@ - (void)displayLinkAction { } r1 = oldBackViewFrame.size.width / 2 - centerDistance / self.viscosity; - - pointA = CGPointMake(x1 - r1 * cosDigree, y1 + r1 * sinDigree); // A - pointB = CGPointMake(x1 + r1 * cosDigree, y1 - r1 * sinDigree); // B - pointD = CGPointMake(x2 - r2 * cosDigree, y2 + r2 * sinDigree); // D - pointC = CGPointMake(x2 + r2 * cosDigree, y2 - r2 * sinDigree); // C - pointO = CGPointMake(pointA.x + (centerDistance / 2) * sinDigree, - pointA.y + (centerDistance / 2) * cosDigree); - pointP = CGPointMake(pointB.x + (centerDistance / 2) * sinDigree, - pointB.y + (centerDistance / 2) * cosDigree); - - [self drawRect]; -} +} - (void)drawRect { backView.center = oldBackViewCenter; backView.bounds = CGRectMake(0, 0, r1 * 2, r1 * 2); @@ -190,6 +194,8 @@ - (void)handleDragGesture:(UIPanGestureRecognizer *)ges { } completion:^(BOOL finished) { if (finished) { + [self countDistance]; + [self.frontView reset]; backView.hidden = YES; From 2a38ceccf70353db6dd45f1ff0815e0b99480344 Mon Sep 17 00:00:00 2001 From: muwan Date: Sat, 23 Jul 2016 18:59:12 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E8=AE=A1=E7=AE=97=E8=B7=9D=E7=A6=BB?= =?UTF-8?q?=E5=9C=A8=E5=AE=8C=E6=88=90=E4=B9=8B=E5=90=8E=E6=93=8D=E4=BD=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 计算距离在完成之后操作 --- KYCuteViewDemo/KYCuteView.m | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/KYCuteViewDemo/KYCuteView.m b/KYCuteViewDemo/KYCuteView.m index 9f5a74b..4aa28da 100755 --- a/KYCuteViewDemo/KYCuteView.m +++ b/KYCuteViewDemo/KYCuteView.m @@ -194,8 +194,6 @@ - (void)handleDragGesture:(UIPanGestureRecognizer *)ges { } completion:^(BOOL finished) { if (finished) { - [self countDistance]; - [self.frontView reset]; backView.hidden = YES; @@ -203,6 +201,7 @@ - (void)handleDragGesture:(UIPanGestureRecognizer *)ges { [shapeLayer removeFromSuperlayer]; self.frontView.center = oldBackViewCenter; + [self countDistance]; [self AddAniamtionLikeGameCenterBubble]; } }];