gpt4 book ai didi

objective-c - 在某些 View 中捕捉屏幕上任意位置的触摸事件?

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:53:11 26 4
gpt4 key购买 nike

我有一个菜单,如果它在一定时间后处于非事件状态,我希望它自动隐藏。此菜单由 UIViewController 的层次结构组成,呈现各种不同的 View 。

我正在考虑运行一个计时器,只要有触摸,它就会失效并重新开始。

是否可以捕获一组 UIView 中的所有触摸事件?也许只是保留一个 bool 值并使用主 UIWindow 来捕获触摸事件?

编辑:

我的应用程序是一种信息亭应用程序,有一个主屏幕和一个菜单。当菜单打开时,我希望它运行一个自动关闭计时器,在整个菜单屏幕上进行任何触摸后该计时器都会重置。菜单以模态方式显示在整个屏幕上。

最佳答案

一种确定的方法是子类化 UIApplication 并覆盖 - (void)sendEvent:(UIEvent *)event 方法,您的应用程序中发生的每个触摸事件都会经过此方法,您可以检查 UIEvent 类型以查看它是否为 UIEventTypeTouches 并重置计时器。

另一种方法是在整个用户可​​访问的 UI 上添加一个透明层并覆盖 hitTest:withEvent:

关于objective-c - 在某些 View 中捕捉屏幕上任意位置的触摸事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9493573/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com