7种常用手势UIGestureRecognizer介绍

7种常用手势UIGestureRecognizer介绍#import "ViewController.h" @interface ViewController (){UITapGestureRecognizer *_tap;UIPanGestureRecognizer *_pan;UIPinchGestureRecognizer *_pinch;UIRotationGestureRecognizer *_rotation;UISwipeGestureRecognizer *_swipe;UILongPressGestureRecognizer *_longpress;UIScreenEdgePanGestureRecognizer *_edgePan;}@property (nonatomic, weak) IBOutlet UIView *testView;@end @implementation ViewController- (void)viewDidLoad {[super viewDidLoad];[self addTapGesture];[self addPanGesture];[self addPinchGesture];[self addRotationGesture];[self addSwipeGesture];[self addLongpressGesture];[self addEdgePanGesture];// 手势谦让[self gestureHumility];} #pragma mark – 手势//单击- (void)addTapGesture{_tap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(tapAction:)];_tap.numberOfTapsRequired = 1;[_testView addGestureRecognizer:_tap];} //拖拽- (void)addPanGesture{_pan = [[UIPanGestureRecognizer alloc]initWithTarget:self action:@selector(panAction:)];_pan.minimumNumberOfTouches = 1;[_testView addGestureRecognizer:_pan];}//捏合- (void)addPinchGesture{_pinch = [[UIPinchGestureRecognizer alloc]initWithTarget:self action:@selector(pinchAction:)];[_testView addGestureRecognizer:_pinch];} //旋转- (void)addRotationGesture{_rotation = [[UIRotationGestureRecognizer alloc]initWithTarget:self action:@selector(rotationAction:)];[_testView addGestureRecognizer:_rotation];} //轻扫- (void)addSwipeGesture{_swipe = [[UISwipeGestureRecognizer alloc]initWithTarget:self action:@selector(swipeAction:)];//指定扫动方向_swipe.direction = UISwipeGestureRecognizerDirectionDown;[_testView addGestureRecognizer:_swipe];} //长按- (void)addLongpressGesture{_longpress = [[UILongPressGestureRecognizer alloc]initWithTarget:self action:@selector(longpressAction:)];_longpress.minimumPressDuration = 1.0;[_testView addGestureRecognizer:_longpress];} //边缘滑动手势- (void)addEdgePanGesture{_edgePan = [[UIScreenEdgePanGestureRecognizer alloc]initWithTarget:self action:@selector(edgePanAction:)];_edgePan.edges = UIRectEdgeLeft;[self.view addGestureRecognizer:_edgePan];} #pragma mark – 动作//单击- (void)tapAction:(UITapGestureRecognizer *)tap{NSLog(@"单击");} //拖拽- (void)panAction:(UIPanGestureRecognizer *)pan{NSLog(@"拖拽");CGPoint point = [pan translationInView:pan.view];// pan.view.transform =CGAffineTransformMakeTranslation(point.x, point.y);pan.view.transform = CGAffineTransformTranslate(pan.view.transform, point.x, point.y);[pan setTranslation:CGPointZero inView:pan.view];} //捏合- (void)pinchAction:(UIPinchGestureRecognizer *)pinch{NSLog(@"捏合");pinch.view.transform = CGAffineTransformMakeScale(pinch.scale, pinch.scale);} //旋转- (void)rotationAction:(UIRotationGestureRecognizer *)rotation{NSLog(@"旋转");rotation.view.transform = CGAffineTransformMakeRotation(rotation.rotation);}//轻扫- (void)swipeAction:(UISwipeGestureRecognizer *)swipe{NSLog(@"向下轻扫");} //长按- (void)longpressAction:(UILongPressGestureRecognizer *)longpress{NSLog(@"长按");} //边缘滑动手势- (void)edgePanAction:(UIScreenEdgePanGestureRecognizer *)edgePan{NSLog(@"左边缘滑动");UIColor *random = [UIColor colorWithRed:arc4random()%256/255.0 green:arc4random()%256/255.0 blue:arc4random()%256/255.0 alpha:1.0];self.view.backgroundColor = random;}#pragma mark – privatemethods- (void)gestureHumility{[_pan requireGestureRecognizerToFail:_swipe];} @end

,人总是珍惜未得到的,而遗忘了所拥有的

7种常用手势UIGestureRecognizer介绍

相关文章:

你感兴趣的文章:

标签云: