IOS:更多视图的手势
我有以下代码:IOS:更多视图的手势,ios,xcode,gesture,swipe,Ios,Xcode,Gesture,Swipe,我有以下代码: UISwipeGestureRecognizer *recognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(rightSwipeHandle:)]; [recognizer setNumberOfTouchesRequired:1]; [view1 addGestureRecognizer:recognizer]; [view2 addGestureRecognizer
UISwipeGestureRecognizer *recognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(rightSwipeHandle:)];
[recognizer setNumberOfTouchesRequired:1];
[view1 addGestureRecognizer:recognizer];
[view2 addGestureRecognizer:recognizer];
[view3 addGestureRecognizer:recognizer];
[recognizer release];
- (void)rightSwipeHandle:(UISwipeGestureRecognizer*)gestureRecognizer{ //do something}
它只在view3中识别滑动,为什么?我怎样才能解决这个问题呢?我应该为每个视图做一个新的SwipeTesture吗?但是我有20个视图。如果你有20个视图,它们可能存储在一个数组中还是什么?如果是的话,你试过这样的东西吗
for (unsigned i = 0; i < [yourViewsArray count]; i++){
UIView *view = [yourViewsArray objectAtIndex:i];
UISwipeGestureRecognizer *recognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(rightSwipeHandle:)];
[recognizer setNumberOfTouchesRequired:1];
[view addGestureRecognizer:recognizer];
[recognizer release];
}
for(无符号i=0;i<[yourViewsArray计数];i++){
UIView*view=[yourViewsArray对象索引:i];
UISweepGestureRecognizer*识别器=[[UISweepGestureRecognizer alloc]initWithTarget:自操作:@selector(rightSwipeHandle:)];
[识别器setNumberOfTouchesRequired:1];
[查看addGestureRecognizer:recognizer];
[识别器释放];
}
有了这个功能,您可以为每个视图添加一个新的识别器my fault,我将编辑它,无论如何,您可以为所有类似的视图设置一个手势识别器