viewWillTransitionToSize即使我按下电源按钮时也会调用
当我的应用程序正在运行时,按下电源按钮(要锁定设备),此功能正在调用。viewWillTransitionToSize即使我按下电源按钮时也会调用
- (void)viewWillTransitionToSize:(CGSize)size withTransitionCoordinator:(id<UIViewControllerTransitionCoordinator>)coordinator
并返回使用
[UIApplication sharedApplication].applicationState
如何防止调用此函数当前状态UIApplicationStateActive
?或如果电源按钮按下如何忽略?因为我不想在powerButton媒体上执行任何操作。
先决条件:启动屏幕应该存在。
我调查了这种行为。看起来这只发生在iPad上,也许它与分割视图功能有关。
尝试通过在方法的开头添加忽略方法内运行的代码:
if([UIApplication sharedApplication].applicationState == UIApplicationStateBackground) {
return;
}
UPDATE:
我发现这个问题的原因。
当您按下“电源”按钮,应用程序窗口更改它们的大小,有时发生在应用程序设置正确applicationState前:
这就是为什么这个方法调用。 对不起,我的英语=)
是,iPad和拆分视图, – Rajneesh071
但同时按下电源按钮,返回其UIApplicationStateActive – Rajneesh071
@ Rajneesh071很奇怪,但我有未来: '(lldb)po [UIApplication sharedApplication] .applicationState UIApplicationStateBackground' –
当您锁定设备时,应用程序状态将为UIApplicationStateInactive。你可以检查这个标志并执行操作或者什么都不做! –
许多次它的返回UIApplicationStateActive – Rajneesh071
看起来像它首先返回StateActive然后它返回StateBAckground。也许你应该找StateBAckground –