标签:
今天遇到一个问题,第一次运行程序时,
- (void)motionEnded:(UIEventSubtype)motion withEvent:(UIEvent *)event
函数无法调用,第二次就好了。找了1天,终于找到了原因。
在第一次运行时,显示了一个帮助页面,而这个页面当时是使用再加一层UIWindow来实现的,现实时调用了
makeKeyAndVisible这个函数,导航结束后,也没有把原始的window设置为key。在ios8上没什么问题,但是在ios9上,原始的window就无法接收motionEnded等摇一摇事件了,但是点击等手势事件没问题。改法就是不用makeKeyAndVisible,仅仅使用sethidden来显示新的UIwindow。
看看什么叫做key window,这个在ios中没有具体说明,在mac里有说明
The key window responds to user input, whether from the keyboard, mouse, or alternative input devices, for an application and is the primary recipient of messages from menus and panels. Usually, a window is made key when the user clicks it. Each application can have only one key window at a given time.
ios UIWindow 错误使用导致无法接收motionEnded(摇一摇)函数
标签:
原文地址:http://www.cnblogs.com/breezemist/p/4817140.html