Sobes.tech
Junior

Šta znači parametar windowSoftInputMode u Androidu?

sobes.tech АИ

Одговор од АИ

windowSoftInputMode — atribut u elementu <activity> u Android manifestu (AndroidManifest.xml), koji definiše interakciju prozora aktivnosti sa virtuelnom tastaturom (softverski unos). Utječe na ponašanje prozora aktivnosti prilikom prikaza ili skrivanja tastature.

Moguće vrijednosti atributa:

  • stateUnspecified: Tastatura je skrivena ili prikazana u zavisnosti od sistemskih postavki i konteksta. Ovo je podrazumijevana vrijednost.
  • stateUnchanged: Stanje tastature (skriveno/prikazano) se ne mijenja prilikom prelaska na ovu aktivnost.
  • stateHidden: Tastatura je uvijek skrivena prilikom prelaska na ovu aktivnost.
  • stateAlwaysHidden: Tastatura je uvijek skrivena ako prozor aktivnosti ima fokus.
  • stateVisible: Tastatura je uvijek vidljiva prilikom prelaska na ovu aktivnost.
  • stateAlwaysVisible: Tastatura je uvijek vidljiva ako prozor aktivnosti ima fokus.
  • adjustUnspecified: Sistem sam određuje kako da prilagodi veličinu prozora ili sadržaja da bi napravio mjesta za tastaturu. Ovo je podrazumijevana vrijednost.
  • adjustResize: Veličina prozora aktivnosti se mijenja tako da sav sadržaj može biti pomjeren i prikazan, a da ga tastatura ne prekrije.
  • adjustPan: Prozor aktivnosti se panoramično pomjera tako da je trenutno polje za unos vidljivo, ali dio sadržaja može biti zaklonjen tastaturom. Veličina prozora se ne mijenja.
  • adjustNothing: Ovaj zastavica je zastarjela i nije podržana. Ponašanje je slično adjustUnspecified.

Neke vrijednosti mogu biti kombinovane (npr. stateVisible|adjustResize).

Primjer upotrebe u manifestu:

<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>