IOS 手势之左右滑动UISwipeGestureRecognizer

来源:互联网 发布:小程序源码上传服务器 编辑:程序博客网 时间:2024/06/10 02:36

做个左右滑动手势.

 

1. 在"ViewController.h"中增加两个手势property.

 

@property (nonatomic, strong) UISwipeGestureRecognizer *leftSwipeGestureRecognizer;

@property (nonatomic, strong) UISwipeGestureRecognizer *rightSwipeGestureRecognizer;

并synthesize到"ViewController.m"文件中.

 

2.在"ViewController.m"文件中的"ViewDidLoad"方法中增加如下代码:

 

self.leftSwipeGestureRecognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleSwipes:)];

    self.rightSwipeGestureRecognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleSwipes:)];

     

    self.leftSwipeGestureRecognizer.direction = UISwipeGestureRecognizerDirectionLeft;

    self.rightSwipeGestureRecognizer.direction = UISwipeGestureRecognizerDirectionRight;

     

    [self.view addGestureRecognizer:self.leftSwipeGestureRecognizer];

    [self.view addGestureRecognizer:self.rightSwipeGestureRecognizer];

 

3.并在"ViewController.m"中增加如下方法;

- (void)handleSwipes:(UISwipeGestureRecognizer *)sender

{

    if (sender.direction == UISwipeGestureRecognizerDirectionLeft) {

        CGPoint labelPosition = CGPointMake(self.swipeLabel.frame.origin.x - 100.0, self.swipeLabel.frame.origin.y);

        self.swipeLabel.frame = CGRectMake( labelPosition.x , labelPosition.y , self.swipeLabel.frame.size.width, self.swipeLabel.frame.size.height);

        self.swipeLabel.text = @"尼玛的, 你在往左边跑啊....";

    }

     

    if (sender.direction == UISwipeGestureRecognizerDirectionRight) {

        CGPoint labelPosition = CGPointMake(self.swipeLabel.frame.origin.x + 100.0, self.swipeLabel.frame.origin.y);

        self.swipeLabel.frame = CGRectMake( labelPosition.x , labelPosition.y , self.swipeLabel.frame.size.width, self.swipeLabel.frame.size.height);

        self.swipeLabel.text = @"尼玛的, 你在往右边跑啊....";

    }

}

 

4. 保存, 编译, 运行....

0 0