从UIScrollView到superview(UIButton)的触摸
可能是重复,但我找不到我的问题的确切答案今晚搜索…
我有一个包含UIScrollView
的UIButton
,因此该按钮是superview。
我想要做的就是将UIScrollView
子视图中的单击事件传递给UIButton
超级视图,并让UIButton
处理它,就像用户直接点击按钮一样。
将滚动视图的userInteractionEnabled
属性设置为NO
对我来说不起作用,因为用户可以滚动内容。 这样做会破坏滚动视图的目的。
这可能吗? 谢谢!
就像huoxinbird说的那样,这样的观点绝对不常见。
如果您对此非常坚定,可以使用UITapGestureRecognizer并让它调用按钮的目标和选择器。
如果你想要包含按钮高亮等等,那么你可能必须inheritanceUITapGestureRecognizer并将touchesEnded转发到按钮。
创建scrollview和override的子类
-(BOOL)touchesShouldBegin:(NSSet *)touches withEvent:(UIEvent *)event inContentView:(UIView *)view { return YES; }
也是uibutton(你的超级视图)的子类,并开始触摸触摸。
通常,您不会将scrollview放在按钮内。 而是考虑使用UIView作为scrollview的超级视图。 或者告诉我们更多关于你的用例的信息,这样我就能理解为什么你必须以这种方式进行设计。