首页 > 系统 > iOS > 正文

一文轻易看懂ios触屏事件

2020-02-19 15:56:48
字体:
来源:转载
供稿:网友

    在IOS开发中,我们经常会涉及到触屏事件,那接下来就由武林频道的小编给小伙伴们总结2种实现IOS触屏事件的方法,简单又实用,需要的友友不妨参考下。

    代码如下:

//在一个函数里面(初始化等)里面添加要识别触摸事件的范围
    infoView=[[UIView alloc] initWithFrame:CGRectMake(20, 100,220, 280)];//范围,出了这个范围就检测不到触摸了
    infoView.backgroundColor=[UIColor blueColor];
    infoView.alpha=0.6;
    [self.view addSubview:infoView];
    /******************监视手势控制*****************///有上下左右,我只用到了左右,上下注掉了。
    UISwipeGestureRecognizer *recognizer;
    recognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleSwipeFrom:)];
    [recognizer setDirection:(UISwipeGestureRecognizerDirectionRight)];
    [infoView addGestureRecognizer:recognizer];
//    recognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleSwipeFrom:)];
//    [recognizer setDirection:(UISwipeGestureRecognizerDirectionUp)];
//    [self.view addGestureRecognizer:recognizer];
//    recognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleSwipeFrom:)];
//    [recognizer setDirection:(UISwipeGestureRecognizerDirectionDown)];
//    [self.view addGestureRecognizer:recognizer];
    recognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleSwipeFrom:)];
    [recognizer setDirection:(UISwipeGestureRecognizerDirectionLeft)];
    [infoView addGestureRecognizer:recognizer];
//触摸事件 的实现函数
//滑动事件1
-(void)handleSwipeFrom:(UISwipeGestureRecognizer *)recognizer{
    //如果往左滑
    if(recognizer.direction==UISwipeGestureRecognizerDirectionLeft) {
        NSLog(@"****************向左滑****************");
    }
    //如果往右滑
    if(recognizer.direction==UISwipeGestureRecognizerDirectionRight) {
        NSLog(@"****************向右滑****************");      
    }
   if (recognizer.direction==UISwipeGestureRecognizerDirectionDown){
       NSLog(@"****************向下滑****************");
    }
    if (recognizer.direction==UISwipeGestureRecognizerDirectionUp){
      NSLog(@"****************向上滑****************");
   }
}

 

 方法二:

 代码如下:

GSEventRecord header;    
GSHardwareKeyInfo key = {0,0,0,0,1,{'a'},1,{'a'},0,0,0,0};    
memset(&header, 0, sizeof(header));    
header.type = kGSEventKeyDown;    
header.infoSize = sizeof(GSHardwareKeyInfo);    
header.timestamp = mach_absolute_time();    
struct    
{    
    GSEventRecord header1;    
    GSHardwareKeyInfo key1;    
}fuck = {header, key};    
GSSendEvent(&fuck, GSGetPurpleApplicationPort());   
    GSEventRecord header; 
    GSHardwareKeyInfo key = {0,0,0,0,1,{'a'},1,{'a'},0,0,0,0}; 
    memset(&header, 0, sizeof(header)); 
    header.type = kGSEventKeyDown; 
    header.infoSize = sizeof(GSHardwareKeyInfo); 
    header.timestamp = mach_absolute_time(); 
    struct 
    { 
        GSEventRecord header1; 
        GSHardwareKeyInfo key1; 
    }fuck = {header, key}; 
    GSSendEvent(&fuck, GSGetPurpleApplicationPort());

    以上所述就是小编给大家总结的2种实现ios触屏事件的方法的全部内容了,希望能够帮助到大家。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表