通过包含UIButtons一个UIScrollView与iOS 7和滚动问题(Issues with

2019-10-19 14:21发布

我一直在负责更新的应用程序,我们有,我没有写。 它包含了水平滚动,只包含UIButtons一个滚动视图。 按钮不仅有一个动作来打开它们所代表的应用程序,但如果挖掘和持有它们可以被拖动。 有问题的滚动视图下面的另一个滚动视图接受按钮拖动。

一切都已经和正在按预期预的iOS 7.在iOS 7设备,按钮水龙头正在尽快滚动视图触摸注册。 该按钮将显示点亮状态就像是选择和滚动视图将开始滚动。 在预先的iOS 7装置中,滚动视图将开始代替滚动登记抽头的。

任何人遇到任何问题,用的UIScrollView与iOS7? setDelaysContentTouches:被设置为YES时,应防止这种情况发生。 我不知所措。

Answer 1:

我经历了同样的问题。 我被粘多个按钮成UIScrollView这是被水平滚动。 然后我被铺设用自动布局这些按钮。 我尝试过,可能使用的组合-setDelaysContentTouches:YES-setExclusiveTouch:YES ,甚至还试图-setUserInteractionEnabled:NO上的按钮,没有奏效。 滚动视图不会滚动,只有按键得到了触摸事件。

什么原来是这个问题是使用自动布局。 我不完全知道为什么,但禁用该和布局的按钮进行使用弹簧正结构后,滚动视图担任意。 滚动视图会滚动,如果我只是拍了拍按钮收到触摸。

所以,也许尝试上的按钮不使用自动布局?



Answer 2:

其中一个大问题,问题是,按钮也可以拖动。 他们可以上拖动,并在自己的滚动视图重新排序,或者移动到另一个滚动视图。 我们落得这样做是继承的scrollviews正在使用我们的按钮。 子类保持跟踪谁在原有按钮的主人是和推翻touchesBegan: touchesMoved:touchesCancelled:

当触摸被我们的按钮子类的认可,这将确定按钮被被拖动并调用相应的方法。 然后,我们会先调用super我们联系方法,然后在[self nextResponder]

这是公司代码,所以我不能直接将它张贴不问。 如果我得到了没关系,我会更新我的实际代码的答案。



文章来源: Issues with iOS 7 and scrolling through a UIScrollView that contains UIButtons