android:windowSoftInputMode
是一個(gè)在 Android 應(yīng)用程序的 AndroidManifest.xml
文件中定義的屬性,它用于控制軟鍵盤(pán)(soft keyboard)如何顯示和與應(yīng)用程序中的輸入框(如 EditText)進(jìn)行交互。這個(gè)屬性可以應(yīng)用于 Activity 或整個(gè)窗口(Window)。
android:windowSoftInputMode
的值可以是以下幾種之一:
stateAlwaysHidden
:軟鍵盤(pán)始終隱藏。當(dāng)用戶(hù)點(diǎn)擊輸入框時(shí),軟鍵盤(pán)不會(huì)顯示。stateAlwaysVisible
:軟鍵盤(pán)始終顯示。無(wú)論用戶(hù)是否點(diǎn)擊輸入框,軟鍵盤(pán)都會(huì)顯示。stateHidden
:軟鍵盤(pán)在用戶(hù)點(diǎn)擊輸入框之前隱藏。當(dāng)用戶(hù)點(diǎn)擊輸入框時(shí),軟鍵盤(pán)會(huì)顯示。這是默認(rèn)值。stateWhenFocused
:只有當(dāng)輸入框獲得焦點(diǎn)時(shí),軟鍵盤(pán)才會(huì)顯示。當(dāng)輸入框失去焦點(diǎn)時(shí),軟鍵盤(pán)會(huì)隱藏。adjustResize
:當(dāng)軟鍵盤(pán)顯示時(shí),重新調(diào)整窗口大小以適應(yīng)輸入框。這通常用于確保輸入框不會(huì)被軟鍵盤(pán)遮擋。adjustPan
:當(dāng)軟鍵盤(pán)顯示時(shí),整個(gè)窗口會(huì)上移,以確保輸入框可見(jiàn)。這種方法可能會(huì)導(dǎo)致窗口內(nèi)容被遮擋。adjustPanOnFocus
:當(dāng)輸入框獲得焦點(diǎn)時(shí),整個(gè)窗口會(huì)上移,以確保輸入框可見(jiàn)。這種方法比 adjustPan
更加智能,因?yàn)樗辉谛枰獣r(shí)調(diào)整窗口位置。通過(guò)設(shè)置不同的 android:windowSoftInputMode
值,您可以自定義軟鍵盤(pán)在您的應(yīng)用程序中的顯示和行為。