android輸入法屬性

當前活動的主窗口和軟鍵盤窗口存在交互,能夠在AndroidManifest.xml中的activity標籤中設置windowSoftInputMode,從而設定軟鍵盤的默認狀態。如: java


1
2


<activity android:name=".ActivityTest"  android:windowSoftInputMode="stateVisible|adjustResize">

上述屬性的設置主要作兩個事情:
1.軟鍵盤狀態,隱藏/顯示;
2.窗口是否調整; android

關於軟鍵盤狀態能夠設置的值有:
1.stateUnspecified
不指定軟鍵盤的狀態(是否它是隱藏或顯示),系統將選擇一個合適的狀態或依賴於主題的設置;軟件盤狀態的默認設置; spa

2.stateUnchanged
Activity得到焦點時,軟件盤保持前面的狀態,不管是隱藏仍是顯示; code

3.stateHidden
正常狀況下,Activity得到焦點時,軟鍵盤是隱藏狀態; xml

4.stateAlwaysHidden
當該主窗口得到焦點時,軟鍵盤老是被隱藏; ci

5.stateVisible
正常狀況下,Activity得到焦點時,軟件盤是顯示狀態; get

6.stateAlwaysVisible
該主窗口得到焦點時,軟鍵盤老是顯示狀態。 it

關於窗口狀態能夠設置的值有:
1.adjustUnspecified
默認設置,不指定主窗口是否調整以適合軟鍵盤輸入,由系統決定幹什麼; table

2.adjustResize
調整主窗口,也就是擠壓窗口界面,將窗口調整到軟件盤之上; class

3.adjustPan
不調整窗口,顯示到狀態上就是軟鍵盤會覆蓋主窗口的下半部分;

注:上述兩種值的設置用「|」隔開!

另外,對於非Activity的窗口,能夠經過setSoftInputMode()來設置上述屬性。
如:


1
2


getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE); getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);

不詳述,看SDK!

相關文章
相關標籤/搜索