android不彈出軟鍵盤
1. android開發中,EditText點擊事件可以響應,就是不彈出軟鍵盤。怎麼解決,EditText是在Dialog中使用的
當點擊EditText時:
1、存儲當前的輸入類型
2、設置輸入類型為InputType.TYPE_NULL,禁止手機軟鍵盤
3、還原原來的輸入類型,因為這次操作完,還要允許用戶修改。
4、彈出日期選擇對話框,操作完後將結果顯示到EditText上。
隱藏軟體盤,代碼如下:
EditText et_start_time = (EditText) this.findViewById(R.id.et_start_time);
int inType = et_start_time.getInputType();
et_start_time.setInputType(InputType.TYPE_NULL);
et_start_time.onTouchEvent(event);
et_start_time.setInputType(inType);
et_start_time.setSelection(et_start_time.getText().length());
2. Android有AutoCompleteTextView有沒有什麼辦法關閉軟鍵盤
在輸入框中輸入我們想要輸入的信息就會出現其他與其相關的提示信息,這種效果在Android中是用AutoCompleteTextView實現的。
由於AutoCompleteTextView是一個可以輸入的控制項,EditText的子類
因此如果需要屏蔽軟鍵盤需要做以下兩點設置:
注冊Touch事件,android中當一個EditText獲取焦點後則會自動彈出輸入法,那麼只需要在onTouch里屏蔽它,代碼:
AutoCompleteTextView.setOnTouch(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
AutoCompleteTextView view = (MyAutoCompleteTextView) v;
view.setInputType(InputType.TYPE_NULL);
return false;
}
});
2.注冊itemClick事件,即點擊條目的時候,需要將結果寫到AutoCompleteTextView上
AutoCompleteTextView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
String txt = (String) parent.getItemAtPosition(position);
}
});
3. android4.0模擬器EditText不自動彈出軟鍵盤了 @@ 大家誰知道怎麼
重新編輯自己的模擬器
只需在android
virtual
devices
manager中的devices
Definitions中選中對應的device進行編輯(edit),在input那欄勾選keyboard下面的隨選(我選No
Nav)在Button那欄選software。
4. 安卓 dialogfragment彈出不出鍵盤的問題
在編輯框輸入內容時會彈出軟鍵盤,而手機屏幕區域有限往往會遮住輸入界面,我們先看一下問題效果圖:輸入用戶名和密碼時,系統會彈出鍵盤,造成系統鍵盤會擋住文本框的問題,如圖所示:輸入密碼時輸入框被系統鍵盤遮擋了,大大降低了用戶操作體驗,這就是開發中非常常見的軟鍵盤遮擋的問題,該如何解決?簡單解決方案方法一在你的activity中的oncreate中setContentView之前寫上這個代碼getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);方法二在項目的AndroidManifest.xml文件中界面對應的里加入這樣會讓屏幕整體上移。如果加上的是android:windowSoftInputMode="adjustPan"這樣鍵盤就會覆蓋屏幕。關於android:windowSoftInputModeactivity主窗口與軟鍵盤的交互模式,可以用來避免輸入法面板遮擋問題,Android1.5後的一個新特性。這個屬性能影響兩件事情:【一】當有焦點產生時,軟鍵盤是隱藏還是顯示【二】是否減少活動主窗口大小以便騰出空間放軟鍵盤它的設置必須是下面列表中的一個值,或一個」state…」值加一個」adjust…」值的組合。在任一組設置多個值——多個」state…」values,例如&mdash有未定義的結果。各個值之間用|分開。例如: