【问题标题】:touchesEnded not getting called after device changes orientationtouchesEnded 在设备改变方向后没有被调用
【发布时间】:2016-02-14 05:29:10
【问题描述】:

我正在我的 iOS 应用程序中实现 touchesBegantouchesEnded,试图检测用户何时将手指放在屏幕上以及何时松开。

我遇到的问题是,一旦调用touchesBegan,如果用户在仍然将手指放在屏幕上的同时旋转设备,当他放开屏幕时,touchesEnded 不会被调用。

有人知道为什么会这样吗?

【问题讨论】:

    标签: ios swift uiresponder


    【解决方案1】:

    您是否改为 touchesCancelled?

    一般来说,系统会在touchesBegan 之后调用touchesEndedtouchesCancelled,因此代码应该同时处理这两者。触摸可能因各种原因而取消,例如手势识别器接管、视图上开始的非交互式动画、来电等。

    【讨论】:

    • 这感觉就像现在的评论。我建议您对其进行编辑以使其更具回答性,并在调用 touchesCancelled 时向 OP 解释,以及为什么在他的情况下没有调用 touchesEnded
    • 好点。在两者中处理它就是诀窍。谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-18
    相关资源
    最近更新 更多