Vad*_*Vad 4 iphone objective-c uiview uigesturerecognizer ios
UITapGestureRecognizer应用于两者UIImageView及其子视图(UITextView).但是,当我点击子视图时,接收器变为子视图及其父视图(即UIImageView+ UITextView).但它应该只是subview,因为那是我点击的那个.我假设嵌套手势会先做出反应,但显然父母会接到第一个敲击然后它会转到孩子身上.
因此,针对各种场景存在不同的解决方案(与我的不同,而是滚动视图内的按钮冲突).如何在没有可能的子类化和iOS 6+支持的情况下轻松解决我的问题?我试图拖延就开始接触了UIGestureRecognizer上UIImageView,我试图设置cancelsTouchesInView到NO-所有没有运气.
Sah*_*jan 10
请尝试以下代码:
使< UIGestureRecognizerDelegate> 符合你的班级.
设置yourGesture.delegate = self;
然后添加此委托方法:
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch {
// return YES (the default) to allow the gesture recognizer to examine the touch object, NO to prevent the gesture recognizer from seeing this touch object.
if([touch.view isKindOfClass: [UITextView class]] == YES)] {
return YES;
}
else {
return NO;
}
}
Run Code Online (Sandbox Code Playgroud)
希望它能解决你的问题.享受编码.. !!!!