【问题标题】:Stop the UIButton being 'active' when finger is dragged outside its bounds当手指被拖动到其边界之外时,停止 UIButton 处于“活动状态”
【发布时间】:2014-06-17 12:11:30
【问题描述】:

如何使按钮仍触发touchUpInside 方法的UIButton 区域更小?当我按下一个按钮并将手指拖到它外面(而不是抬起手指)时,使按钮保持突出显示的按钮边界之外的区域非常大。

我想实现touchUpInside 方法只有在手指(被拖动)仍在按钮边界内时才会被触发。目前,如果您按下一个按钮,并且在不抬起手指的情况下将手指拖到按钮外,则调用touchUpInside 方法(而不是touchUpOutside 方法)的区域相当大。我可以限制touchUpInside 方法仅在手指位于按钮边界内时调用吗?

谢谢。

【问题讨论】:

    标签: ios objective-c uibutton


    【解决方案1】:

    我不太确定我是否清楚地理解了您的问题。所以我想提供我的两个解决方案:

    1. 棘手的问题:您将另一个较小的子视图添加到正在拖动的按钮,然后关闭此按钮的 userInteraction 并在完成拖动时重新激活它。

    2. 禁用稳定按钮的用户交互,您可以根据框架识别两个按钮是否相互接触。像上面那样完成后反应 userInteraction。

    【讨论】:

    • 感谢您的回答。将子视图添加到按钮有什么好处?我需要在按钮上注册一个“点击并按住”,因此将调用 touchUpOutside 方法。至于没有。 2:按钮不会相互接触,也不会相互接触——我没有将一个按钮拖到另一个按钮上。我会尽量让我的问题更清楚。我想我已经把它复杂化了。
    猜你喜欢
    • 2019-08-16
    • 1970-01-01
    • 2016-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多