??? 在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觸屏事件的方法的全部內容了,希望能夠幫助到大家。