EditText 初始不獲得焦點及輸入框被遮擋問題
發布時間:2013-9-2 15:47
發布者:
reggae
介紹EditText和AutoCompleteTextView初始不獲得焦點及解決軟鍵盤彈出時遮擋輸入框問題。
1、activity啟動時EditText不獲得焦點
Activity啟動時若有一個EditText默認,EditText獲得焦點,去掉首次焦點,在manifest.xml中對應activity添加
1
- android:windowSoftInputMode="stateHidden"
復制代碼
即可。
2、鍵盤彈出時輸入框被壓縮
輸入框獲得焦點彈出軟鍵盤時,輸入框被壓縮,字體上浮,同時背景出現問題。如下:
網上解決方法是添加
- android:windowSoftInputMode="stateHidden|adjustResize"
復制代碼
或
- getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE
- | WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);
復制代碼
經測試后無效。
解決方法為在外層布局中添加scrollView,因為scrollView只允許包含一個子View,所以如果出現問題布局已有外層layou,直接嵌套在ScrollView中即可,如下:
Java
-
- xmlns:tools="http://schemas.android.com/tools"
- android:layout_width="match_parent"
- android:layout_height="match_parent" >
復制代碼
如果出現問題布局沒有外層layout,還需要再嵌套一層RelativeLayout,如下:
Java
-
- xmlns:tools="http://schemas.android.com/tools"
- android:layout_width="match_parent"
- android:layout_height="match_parent" >
-
- android:layout_width="match_parent"
- android:layout_height="match_parent" >
復制代碼 以上是本文關于EditText 初始不獲得焦點及輸入框被遮擋問題的詳細敘述,希望本文對廣大安卓開發者有所幫助,感謝閱讀本文。更多安卓技術問題歡迎加群探討:278744577,驗證碼:eec,不寫驗證不予通過喲~
|