我在UIScrollView中有一些UIButtons,但我不想延迟按钮触摸。但是,只要滚动视图检测到拖动/滚动,我想取消UIButton触摸并继续滚动UIScrollView。
我已经包含以下内容......
_scrollView.delaysContentTouches = NO;
...但是(显然)拖动时按钮触摸不会取消。有没有人对我如何实现这个功能有任何建议?
答案 0 :(得分:7)
您可以覆盖UIScrollView
。
-(BOOL)touchesShouldCancelInContentView:(UIView *)view
{
return YES;
}
在你的UIButton中,你应该为不同的控制事件添加不同的方法。
UIControlEventTouchDown
的高亮效果。UIControlEventTouchUpInside | UIControlEventTouchUpOutside
; UIControlEventTouchCancel
的高亮效果。答案 1 :(得分:1)
您可以使用scrollViewWillBeginDragging触发通知,并通过在按钮中搜索按钮取消按钮。码。我认为这是你要做的,但我不确定我是否正确理解你的问题。