我在iPad应用程序的左上角有一个UIButton
(“后退按钮”),可以解除视图控制器的问题。我发现如果你点击这个按钮略高,你可以激活按钮并开始同时拉下通知窗格。发生这种情况时,我的-viewWillDisappear
会被执行并停止视图中的动画,但视图实际上不会被忽略。当然,通知窗格并没有完全降低,因此最终结果看起来像我的动画崩溃,后退按钮也失败了。
显而易见的解决方案是将按钮向下移动一点,但由于布局原因这是不合需要的,我很好奇:
编辑:毕竟看起来不像是一个问题。事实证明,我的-applicationWillResignActive
被调用,而不是-viewWillDisappear
。仍然看起来很糟糕,但至少行为是明确的。我根本没有激活我的主页按钮,只需拉下通知窗格。
答案 0 :(得分:1)
我已经完成了一个UIViewController,它有一个定时动画(如横幅广告),并且通知窗格向下并不会停止它,直到窗格完全显示为止。
也许您必须在-applicationWillResignActive:
和-applicationDidBecomeActive:
上处理动画,例如暂停和恢复动画。
您可以直接在您的UIViewController上接收这些通知(而不是在AppDelegate上处理它们),方法是将以下代码添加到-viewDidLoad
:
// Add observers
[[NSNotificationCenter defaultCenter]addObserver:self
selector:@selector(pauseAnimations:)
name: UIApplicationWillResignActiveNotification
object:nil];
[[NSNotificationCenter defaultCenter]addObserver:self
selector:@selector(resumeAnimations:)
name:UIApplicationDidBecomeActiveNotification
object:nil];