2016-05-16 7 views
0

Während meine App läuft und ich drücke Power-Taste (um das Gerät zu sperren) ruft diese Funktion.viewWillTransitionToSize aufgerufen, auch wenn ich die Power-Taste drücken

- (void)viewWillTransitionToSize:(CGSize)size withTransitionCoordinator:(id<UIViewControllerTransitionCoordinator>)coordinator 

und den aktuellen Status der Rückkehr UIApplicationStateActive

mit
[UIApplication sharedApplication].applicationState 

Wie Aufruf dieser Funktion zu verhindern? oder wie man es ignoriert, wenn die Power-Taste gedrückt wird? weil ich keine aktion auf powerButton drücken möchte, drücken sie.

Voraussetzung: Startbildschirm sollte vorhanden sein.

+0

Wenn Sie ein Gerät sperren, lautet der Anwendungsstatus UIApplicationStateInactive. Sie können nach dieser Flagge suchen und Operationen ausführen oder nichts tun! –

+0

viele Male ihre Rückkehr UIApplicationStateActive – Rajneesh071

+0

sieht aus wie es zuerst StateActive zurückgeben und dann StateBAckground zurückgibt. Vielleicht sollten Sie für StateBAckground aussehen –

Antwort

2

Diese Funktion Aufruf App minimieren und Power-Taste drücken aufgrund der neuen Funktion von Multitasking.
Sie können Ihre Anwendung Vollbild machen, um dieses Problem zu lösen.

prüfen auf ✓ Requires full screen

enter image description here

Aber das ist nicht die richtige Lösung, weil Sie Multitasking in einigen Fällen zu übernehmen haben.

0

Ich untersuchte dieses Verhalten. Es scheint, dass dies nur auf iPads passiert und vielleicht mit der Split-View-Funktion zusammenhängt.

Versuchen Sie den Code ausgeführt wird innerhalb der Methode durch Zugabe zu Beginn des Verfahrens zu ignorieren:

if([UIApplication sharedApplication].applicationState == UIApplicationStateBackground) { 
return; 
} 

UPDATE:

Ich fand die Ursache für dieses Problem.

Wenn Sie die Taste „Power“ -Taste, das Anwendungsfenster ihrer Größe verändert und manchmal passiert es, bevor die Anwendung die richtige applicationState setzt:

enter image description here enter image description here

Deshalb ist diese Methode aufruft. Entschuldigung für mein Englisch =)

+0

Ja, iPad und Split-Ansicht, – Rajneesh071

+0

Aber während Sie seine Power-Taste UIApplicationStateActive – Rajneesh071

+0

@ Rajneesh071 Rückkehr Sehr seltsam, aber ich habe nächste: '(lldb) po [UIApplication sharedApplication] .applicationState UIApplicationStateBackground' –

Verwandte Themen