android 軟鍵盤彈出 佈局上移動
阿新 • • 發佈:2018-12-04
這是軟體盤和actiivty主視窗搶空間造成的,需在AndroidManifest.xml裡為activity配置windowSoftInputMode屬性併為其選擇屬性值。
如下:
<activity android:name="...Activity" android:screenOrientation="portrait" android:windowSoftInputMode="adjustPan|stateHidden"/>
解決!!!
對於windowSoftInputMode屬性,分析一下:
這個屬效能影響兩件事情:
1:當活動主視窗有焦點產生時,軟鍵盤是隱藏還是顯示
2:是否減少活動主視窗大小以便騰出空間放軟鍵盤
它的設定必須時下面的一個值或者是一個組合值"state..."和“adjust..”
各值的含義:
1,stateUnspecified:軟體盤的狀態沒有制定,系統將選擇一個合適的狀態或依賴於主題的設定
2.stateUnchanged:當這個activity出現時,軟鍵盤將一直保持在上一個activity裡的狀態,無論是隱藏還是顯示
3.stateHidden:使用者選擇activity時,軟鍵盤總是被隱藏
4.stateAlwaysHidden:當該Activity 主視窗獲取焦點時,軟鍵盤也總是被隱藏的
5.stateVisible:軟鍵盤通常是可見的
6.stateAlwaysVisible:使用者選擇activity時,軟鍵盤總是顯示的狀態
7.adjustUnspecified:預設設定,通常由系統自行決定是隱藏還是顯示
8.adjustResize:該Activity總是調整螢幕的大小以便留出軟鍵盤的空間
9adjustPan:當前視窗的內容將自動移動以便當前焦點從不被鍵盤覆蓋和使用者能總是看到輸入內容的部分