Zarządzanie zmianami konfiguracji klawiatury odłączanej

System Android wywołuje zmianę konfiguracji za każdym razem, gdy klawiatura jest podłączana do urządzenia lub od niego odłączana. Aby zapewnić użytkownikom komfort i maksymalną produktywność na urządzeniach z dużym ekranem i odłączaną klawiaturą, aplikacja musi skutecznie zarządzać zmianami konfiguracji klawiatury.

Wyniki

Aplikacja reaguje na podłączenie lub odłączenie klawiatury zewnętrznej bez ponownego tworzenia uruchomionej aktywności.

Zgodność wersji

W przypadku tej implementacji ustaw minSDK projektu na poziom API 8 (patrz View#onConfigurationChanged()).

Zależności

Brak.

Zapobieganie ponownemu tworzeniu aktywności po zmianie klawiatury

Aby zapobiec ponownemu tworzeniu aktywności po podłączeniu lub odłączeniu odłączanej klawiatury, dodaj wartości związane z klawiaturą do atrybutu configChanges w pliku manifestu aplikacji i dodaj widok do hierarchii widoków aktywności, aby aplikacja mogła nasłuchiwać zmian konfiguracji.

1. Zadeklaruj atrybut configChanges

Zaktualizuj element <activity> w manifeście aplikacji, dodając wartości keyboard|keyboardHidden do listy zmian już zarządzanej konfiguracji:

<activity
    ...
    android:configChanges="...|keyboard|keyboardHidden">

2. Dodawanie pustego widoku do hierarchii widoków

Zadeklaruj nowy widok i dodaj kod obsługi w metodzie onConfigurationChanged() widoku:

Kotlin

val v = object : View(this) {
    override fun onConfigurationChanged(newConfig: Configuration?) {
        super.onConfigurationChanged(newConfig)
        // Handler code here.
    }
}

Java

View v = new View(this) {
    @Override
    protected void onConfigurationChanged(Configuration newConfig) {
        super.onConfigurationChanged(newConfig);
        // Handler code here.
    }
};

Najważniejsze punkty

  • android:configChanges: atrybut elementu <activity> w manifeście aplikacji. Informuje system o zmianach konfiguracji, którymi zarządza aplikacja.
  • View#onConfigurationChanged() : metoda, która reaguje na propagację nowej konfiguracji aplikacji.

Kolekcje, które zawierają ten przewodnik

Ten przewodnik jest częścią wyselekcjonowanych kolekcji krótkich przewodników, które obejmują szersze cele związane z programowaniem na Androida:

Włącz w aplikacji obsługę zoptymalizowanego środowiska użytkownika na tabletach, urządzeniach składanych i urządzeniach z ChromeOS.

Masz pytania lub chcesz podzielić się opinią?

Odwiedź stronę z najczęstszymi pytaniami, aby zapoznać się z przewodnikami, lub skontaktuj się z nami i podziel się swoimi przemyśleniami.