我搜索了互联网,并发现了一些算法,但它们只是导致视图来回摇摆,这根本不像苹果摇摆。似乎有一些随机性,因为每个图标都有所不同。
有没有人知道某些代码可以重新创建相同的抖动模式(或非常接近它的东西)?谢谢!!!
解决方法 @ Vic320的答案很好,但是我个人不喜欢翻译。我已经编辑了他的代码,提供一个解决方案,我个人觉得看起来更像跳板的摆动效果。大多数情况下,它通过添加一点随机性和专注于旋转来实现,无需翻译:
#define degreesToradians(x) (M_PI * (x) / 180.0)#define kAnimationRotateDeg 1.0- (voID)startJiggling { NSInteger randomInt = arc4random_uniform(500); float r = (randomInt/500.0)+0.5; CGAffinetransform leftWobble = CGAffinetransformMakeRotation(degreesToradians( (kAnimationRotateDeg * -1.0) - r )); CGAffinetransform rightWobble = CGAffinetransformMakeRotation(degreesToradians( kAnimationRotateDeg + r )); self.transform = leftWobble; // starting point [[self layer] setAnchorPoint:CGPointMake(0.5,0.5)]; [UIVIEw animateWithDuration:0.1 delay:0 options:UIVIEwAnimationoptionAllowUserInteraction | UIVIEwAnimationoptionRepeat | UIVIEwAnimationoptionautoreverse animations:^{ [UIVIEw setAnimationRepeatCount:NSNotFound]; self.transform = rightWobble; } completion:nil];}- (voID)stopJiggling { [self.layer removeAllAnimations]; self.transform = CGAffinetransformIDentity;}
信用证的到期虽然,@ Vic320的答案为此代码提供了基础,所以1为此。
总结以上是内存溢出为你收集整理的iphone – iOS图标摇摆算法全部内容,希望文章能够帮你解决iphone – iOS图标摇摆算法所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)