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łączana od niego. Aby zapewnić użytkownikom płynną obsługę i zmaksymalizować ich 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 interfejsu 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 configChanges atrybutu w manifeście 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 już zarządzanych zmian konfiguracji

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

2. Dodaj pusty widok do hierarchii widoków

Zadeklaruj nowy widok i dodaj kod obsługi w metodzie onConfigurationChanged() tego 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

Zbiory zawierające ten przewodnik

Ten przewodnik jest częścią tych wybranych zbiorów krótkich przewodników, które obejmują szersze cele związane z tworzeniem aplikacji na Androida:

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

Masz pytania lub chcesz przekazać opinię?

Wejdź na stronę z najczęstszymi pytaniami i dowiedz się więcej o krótkich przewodnikach lub skontaktuj się z nami i podziel się swoimi przemyśleniami.