【发布时间】:2015-05-20 05:22:30
【问题描述】:
我想在UIPanGestureRecognizer 回调期间更改 UIView。例如:
- (void)handleScroll:(UIPanGestureRecognizer *)recognizer
if (recognizer.state == UIGestureRecognizerStateBegan){
self.subview.userInteractionEnabled = NO;
} else if (recognizer.state == UIGestureRecognizerStateEnded){
self.subview.userInteractionEnabled = YES;
}
}
这在 UIPanGestureRecognizer 回调中从未起作用,但如果我在 initWithFrame 方法中编写代码,它确实起作用
我也尝试在回调中使用performSelectorOnMainThread:<#(SEL)#> withObject:<#(id)#> waitUntilDone:<#(BOOL)#>,但也没有用。
在手势识别回调中你不能做什么有什么限制吗?
【问题讨论】:
-
查看语句self.userInteractionEnabled = NO;的顺序
-
@AshokLondhe 所以当识别开始时,我想禁用所有子视图的交互,在它结束后,我希望它们回来。顺序是我所期望的。你有什么具体的意思吗?
-
如果你正在使用这个 if (recognizer.state == UIGestureRecognizerStateBegan){ self.userInteractionEnabled = NO;它永远不会工作......而不是 NO 写 YES 。
-
我已经更新了问题,我现在正在更改子视图,但即使这样对我也不起作用。
-
你使用什么样的用户交互函数。上面的代码对我有用。我用按钮试过
标签: ios uiview uigesturerecognizer