Sobes.tech
Junior

Wat betekent de parameter windowSoftInputMode in Android?

sobes.tech AI

Antwoord van AI

windowSoftInputMode — is een attribuut in het <activity>-element in het Android-manifest (AndroidManifest.xml), dat de interactie van het activiteitvenster met het virtuele toetsenbord (software-invoer) definieert. Het beïnvloedt het gedrag van het activiteitvenster bij het tonen of verbergen van het toetsenbord.

Mogelijke waarden van het attribuut:

  • stateUnspecified: Het toetsenbord is verborgen of zichtbaar afhankelijk van systeeminstellingen en context. Dit is de standaardwaarde.
  • stateUnchanged: De toestand van het toetsenbord (verborgen/zichtbaar) verandert niet bij het openen van deze activiteit.
  • stateHidden: Het toetsenbord is altijd verborgen bij het openen van deze activiteit.
  • stateAlwaysHidden: Het toetsenbord is altijd verborgen als het activiteitvenster focus heeft.
  • stateVisible: Het toetsenbord is altijd zichtbaar bij het openen van deze activiteit.
  • stateAlwaysVisible: Het toetsenbord is altijd zichtbaar als het activiteitvenster focus heeft.
  • adjustUnspecified: Het systeem bepaalt zelf hoe de grootte van het venster of de inhoud wordt aangepast om ruimte te maken voor het toetsenbord. Dit is de standaardwaarde.
  • adjustResize: De grootte van het activiteitvenster wordt aangepast zodat alle inhoud gescrold kan worden en het gefocuste invoerveld zichtbaar is, zonder door het toetsenbord te worden bedekt.
  • adjustPan: Het activiteitvenster wordt panoramisch verschoven zodat het huidige invoerveld zichtbaar is, maar een deel van de inhoud kan worden bedekt door het toetsenbord. De grootte van het venster verandert niet.
  • adjustNothing: Het vlaggetje is verouderd en wordt niet ondersteund. Het gedrag is vergelijkbaar met adjustUnspecified.

Sommige waarden kunnen worden gecombineerd (bijvoorbeeld, stateVisible|adjustResize).

Voorbeeld van gebruik in het manifest:

<activity
    android:name=".MainActivity"
    android:label="@string/app_name"
    android:windowSoftInputMode="stateVisible|adjustResize">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>