2013-04-22 28 views
5

Chcę posłuchać zmiany konfiguracji "Auto-obracanie", a nie orientacji urządzenia/systemu, ale zmiany przełącznika (wł/wył)
Wierzę, że będę musiał podpisać do configChange w AndroidManifest i utwórz odbiornik gdziekolwiek chcesz, ale nie jestem pewien, co to jest poprawna konfiguracja. I.E.Konfiguracja automatycznego obracania Androida na słuchacza zmian

android:configChanges='??' 

Ale może istnieje inny sposób, a nie poprzez android:configChanges ...

+0

To jest pytanie ... co należy zapisać się na ... – SagiLow

+0

http://stackoverflow.com/a/4435473/1620542 przyjrzeć się, że powinno być to, co chcesz – Eluvatar

+0

Wypróbuj link https://www.google.co.in/search?q=android:configchanges –

Odpowiedz

9

trzeba słuchać Settings.System.ACCELEROMETER_ROTATION używając zawartości obserwatora.

Aby zarejestrować Zawartość obserwatora

getContentResolver().registerContentObserver(Settings.System.getUriFor 
(Settings.System.ACCELEROMETER_ROTATION), 
true,rotationObserver); 

i zadeklarować je tutaj. Metoda onChange zostanie wywołana po zmianie rotacji.

private ContentObserver rotationObserver = new ContentObserver(new Handler()) { 
     @Override 
     public void onChange(boolean selfChange) { 
      Do your task 
     } 
}; 
+0

nie chce wiedzieć, kiedy urządzenie się obróciło, chce wiem, kiedy zmieniło się ustawienie automatycznego obracania w zakresie dostępności – Eluvatar

+2

@Eluvatar Wysłałem dokładnie to, czego chciał. Od następnego razu sprawdź przed anulowaniem – stinepike

+0

Tak, masz rację, przepraszam za głosowanie w dół, myliłem się./ – Eluvatar