仿iOS图标抖动

最近闲来无聊,研究了一下IPhone桌面图标的抖动,网上有一个类似的事例,但是我看来效果实在不佳,自己也来写一个玩玩,有需要的小伙伴可以参考下。

仿iOS图标抖动


#import "LHViewController.h"
#define angelToRandian(x) ((x)/180.0*M_PI)
@interface LHViewController ()
@property (strong, nonatomic) IBOutlet UIImageView *imageView;
@end
@implementation LHViewController
- (void)viewDidLoad
{
  [super viewDidLoad];
 // Do any additional setup after loading the view, typically from a nib.
  UILongPressGestureRecognizer* longPress=[[UILongPressGestureRecognizer alloc]initWithTarget:self action:@selector(longPress:)];
  [self.imageView addGestureRecognizer:longPress];
}
-(void)longPress:(UILongPressGestureRecognizer*)longPress
{
  if (longPress.state==UIGestureRecognizerStateBegan) {
    CAKeyframeAnimation* anim=[CAKeyframeAnimation animation];
    anim.keyPath=@"transform.rotation";
    anim.values=@[@(angelToRandian(-7)),@(angelToRandian(7)),@(angelToRandian(-7))];
    anim.repeatCount=MAXFLOAT;
    anim.duration=0.2;
    [self.imageView.layer addAnimation:anim forKey:nil];
    self.btn.hidden=NO;
  }
}
- (IBAction)delete:(id)sender {
  [self.imageView removeFromSuperview];
  [self.btn removeFromSuperview];
}
@end

以上所述就是本文的全部内容了,希望大家能够喜欢。

本文标题为:仿iOS图标抖动

基础教程推荐