UI手势

这里写图片描述这个手势的效果
主要是Viewcontroller.h的实现文件

import “ViewController.h”

@interface ViewController ()
{
UIView *view;
}
@end

@implementation ViewController

  • (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
    UIButton *button;
    button = [UIButton buttonWithType:UIButtonTypeSystem];
    [button addTarget:self action:@selector(buttonAction:) forControlEvents:UIControlEventTouchUpInside];
    button.frame = CGRectMake(0, 0, 60, 30);
    [button setTitle:@”点我” forState:0];
    [self.view addSubview:button];
    self.navigationItem.titleView = button;
    view = [UIView new];
    view.backgroundColor = [UIColor redColor];
    view.translatesAutoresizingMaskIntoConstraints = NO;
    view.hidden = NO;
    UIWindow *window = [[UIApplication sharedApplication].windows objectAtIndex:0];
    [window addSubview:view];
    NSArray *constraints = [NSLayoutConstraint constraintsWithVisualFormat:@”H:|-100-[view]-100-|” options:0 metrics:@{} views:NSDictionaryOfVariableBindings(view)];
    [window addConstraints:constraints];
    constraints = [NSLayoutConstraint constraintsWithVisualFormat:@”V:|-54-[view]-200-|” options:0 metrics:@{} views:NSDictionaryOfVariableBindings(view)];
    [window addConstraints:constraints];
    }

pragma mark —- 此方法封装了手势–

  • (void)touchesBegan:(NSSet )touches withEvent:(UIEvent )event{
    NSLog(@”手指接触屏幕”);
    UITouch *touch = [touches anyObject];
    NSLog(@”tapCount = %lu”,(unsigned long) touch.tapCount);
    NSLog(@”touch timestamp = %f”,touch.timestamp);
    NSLog(@”%lu根手指”,event.allTouches.count);
    // NSSet *set = event.allTouches;
    // NSMutableArray *array = [NSMutableArray array];
    // for (UITouch *t in set) {
    // [array addObject:t ]; }
    // //找到手指在屏幕上的位置
    CGPoint point = [touch locationInView:self.view];
    NSLog(@”point = %@”,[NSValue valueWithCGPoint:point]);
    }
  • (void)touchesMoved:(NSSet )touches withEvent:(UIEvent )event{
    NSLog(@”手指在屏幕上移动”);
    UITouch *touch = [touches anyObject];
    CGPoint point = [touch locationInView:self.view];
    NSLog(@”point = %@”,[NSValue valueWithCGPoint:point]);
    }
  • (void)touchesEnded:(NSSet )touches withEvent:(UIEvent )event{
    NSLog(@”手指离开屏幕”);
    if (view.hidden == NO) {
    view.hidden = YES;
    }

}
- (void)touchesCancelled:(NSSet )touches withEvent:(UIEvent )event{
NSLog(@”无法识别手势”);
}
- (void)buttonAction:(UIButton *)sender{
view.hidden = !view.hidden;
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}

@end

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值