默認EditText在獲得焦點時,Touch一下會彈出軟鍵盤(實際上是一個對話框),如果想實現當EditText獲得焦點時,不要彈出軟鍵盤,該如何禁掉彈出軟鍵盤呢?
方法1:在
onCreate()中調用EditText實例的setInputType(InputType.TYPE_NULL),xml文件中定義EditText時,指定的android:inputType="??",??可以任意。
View.OnTouchListener dateEditTextOnTouchListener
=
new EditTextOnTouchListener(
DATE_DIALOG);
mDateEditText.setOnTouchListener(dateEditTextOnTouchListener);
mDateEditText.setInputType(InputType.TYPE_NULL);
試過如果不用上面的OnTouchListener而是用OnClickListener時,會有一個現象:即,當EditText從沒有獲得焦點到第一次獲得焦點時,不會彈出對話框,只有在EditText已經獲得焦點的情況下再去點擊EditText,此時才會彈出對話框。但是如果不設置OnClickListener,而是設置成OnTouchListener則第一次獲得焦點時就會彈出對話框。
方法2:直接將EditText設置為不可獲得焦點。
mDateEditText.setFocusable(false);