1. 程式人生 > >Android筆記:軟鍵盤彈出遮蓋原來介面的佈局控制元件

Android筆記:軟鍵盤彈出遮蓋原來介面的佈局控制元件

給Activity設定軟鍵盤出現與Activity之間的互動模式:

1.在onCreat中的setContent方法之前寫入:

getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);  


2.直接在專案的MainFest.xml中該Activity中設定:

 <activity  
   android:name="com.drain.main.LoginControlActivity"  
   android:windowSoftInputMode="adjustPan"  
   android:screenOrientation="portrait"  
   android:label="@string/app_name" >  
 </activity>  


這樣會讓螢幕整體上移。

如果加上的是 android:windowSoftInputMode="adjustPan"這樣鍵盤就會覆蓋螢幕。

大家在網上搜索的時候會看到很多下面屬性的介紹,但是隻是介紹了相關的,索性我就把所有的都一一列出來,供大家學習。

windowSoftInputMode各值的含義:

       【A】stateUnspecified:軟鍵盤的狀態並沒有指定,系統將選擇一個合適的狀態或依賴於主題的設定

  【B】stateUnchanged:當這個activity出現時,軟鍵盤將一直保持在上一個activity裡的狀態,無論是隱藏還是顯示

  【C】stateHidden:使用者選擇activity時,軟鍵盤總是被隱藏

  【D】stateAlwaysHidden:當該Activity主視窗獲取焦點時,軟鍵盤也總是被隱藏的

  【E】stateVisible:軟鍵盤通常是可見的

  【F】stateAlwaysVisible:使用者選擇activity時,軟鍵盤總是顯示的狀態

  【G】adjustUnspecified:預設設定,通常由系統自行決定是隱藏還是顯示

  【H】adjustResize:該Activity總是調整螢幕的大小以便留出軟鍵盤的空間

  【I】adjustPan:當前視窗的內容將自動移動以便當前焦點從不被鍵盤覆蓋和使用者能總是看到輸入內容的部分