题
我有一个隐藏状态栏的 iPhone 应用程序。但是,当我点击状态栏区域时,我的主视图没有收到任何触摸事件。我可以做些什么来解决这个问题吗?
以下是我的应用程序设置的一些详细信息(如果重要的话):
- 它是一个基于 OpenGL 的应用程序。
- 该应用程序以横向模式启动。但是,当我点击肖像模式区域“顶部”附近的区域时,触摸事件丢失。(换句话说,当我将设备横向放置时,我不会在左侧边缘收到触摸事件。)
- 我的 info.plist 将 UIStatusBarHidden 设置为 true,并且在我的应用程序委托的 applicationDidFinishLaunching 方法中,我有“application.statusBarHidden = YES;”
- 主视图将 ExclusiveTouch 设置为 YES。
- 当我点击屏幕上的其他任何位置时,将调用视图的 TouchesBegan:withEvent 方法。
- 我的视图在状态栏区域内绘制得很好。
(请不要抱怨保密协议。谢谢。)
更新: 事实证明,这个问题只出现在iPhone模拟器上。当该应用程序在实际的 iPhone 上运行时,到处都会检测到触摸。
我仍然有兴趣知道是否有办法让它在模拟器上运行,但这没什么大不了的。
解决方案
找到了我自己的答案(某种程度):
此行为仅发生在 iPhone 模拟器中。当我在实际的 iPhone 上运行该应用程序时,它运行良好。
我仍然有兴趣知道是否有办法让它在模拟器上工作。
其他提示
我没有遇到过这个问题,但话又说回来,我没有使用 OpenGL 视图。当您以横向模式启动时,您是否设置了相应 ViewController 的 StatusBarHidden 属性?
这是模拟器中的一个错误。它在 iPhone 上运行良好。查看 http://gtekna.com/?p=140
不隶属于 StackOverflow