我知道你可以使用touchesBegan,touchesEnded等来检测触摸.这些都可以.唯一的问题是他们只检测视图本身的触摸,而不是像文本字段那样检测视图顶部的任何内容.
我的目标是在一段时间不活动后创建超时.如果触摸屏幕,将重置超时,这意味着某人仍在使用该应用程序.它可以工作到目前为止,只要他们不点击任何控件(如标签,按钮,textview等).
我也可以在点击任何控件时重置超时,但这需要更多的情况(不同视图控制器上的不同类型的控件).
我正在寻找和结束所有屏幕点击检测方法.有任何想法吗?
Nat*_*ati 19
您可以将其添加到AppDelegate:
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
let tapGesture = UITapGestureRecognizer(target: self, action: nil)
tapGesture.delegate = self
window?.addGestureRecognizer(tapGesture)
return true
}
func gestureRecognizer(gestureRecognizer: UIGestureRecognizer, shouldReceiveTouch touch: UITouch) -> Bool {
// User tapped on screen, do whatever you want to do here.
return false
}
Run Code Online (Sandbox Code Playgroud)
并且还使您的AppDelegate符合UIGestureRecognizerDelegate协议.
| 归档时间: |
|
| 查看次数: |
11265 次 |
| 最近记录: |