码迷,mamicode.com
首页 > 移动开发 > 详细

ios UIWindow 错误使用导致无法接收motionEnded(摇一摇)函数

时间:2015-09-17 19:08:36      阅读:229      评论:0      收藏:0      [点我收藏+]

标签:

今天遇到一个问题,第一次运行程序时,

- (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

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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!