我有一个带有许多按钮的 ScrollView 。我想检测 scrollView 内 UIButton 上的触摸,但无法获取它们。我尝试通过子类化 uiscrollview 和 uibutton 但失败了。如果用户短时间按住该按钮,比如 2 秒,我想检测按钮上的触摸。然后我想将按钮拖动到用户可以将其拖动到 ScrollView 上的位置。请帮助我。
最佳答案
你不需要继承。
尝试为您的 UIButton
附加一个 UILongPressGestureRecognizer
。
看看here了解更多信息。
手势识别器可从 iOS 3.2 开始使用,并使与手势相关的所有事情变得非常简单。 Here你可以找到教程。
如果要支持以前的版本,就得另辟蹊径:
将
UIControlEventTouchUpInside
和UIControlEventTouchDown
操作添加到您的按钮;在 touchDown 处理程序中开始计时(设置当前时间的变量);
在 touchUp 处理程序中停止计时;测量差异,如果高于您的阈值,则触发您的操作。
如果这不起作用,请提供更多信息来说明为什么不起作用。
关于iphone - UIButton 的触摸检测添加为 UIScrollView 中的 subview ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6703974/