Android實現(xiàn)EditText控件禁止輸入內(nèi)容的方法(附測試demo)
本文實例講述了Android實現(xiàn)EditText控件禁止輸入內(nèi)容的方法。分享給大家供大家參考,具體如下:
問題:
android如何實現(xiàn)EditText控件禁止往里面輸入內(nèi)容?
修改版解決方法:
EditText editText = (EditText) findViewById(R.id.editText1); editText.setKeyListener(null);
看到這個問題大家可能有點奇怪了,EditText的功能不就是往上面寫入內(nèi)容嗎?
再者,如果真要禁止輸入文本,在布局文件中添加 android:focusable="false",
或者在代碼中使用editText.setFocusable(false),不就Ok了?
項目需求是這樣的,如果EditText上面已經(jīng)被setText()內(nèi)容,則需要禁止輸入,防止它被修改。
如果沒有顯示內(nèi)容,則將EditText設(shè)置為可輸入狀態(tài)。
經(jīng)過測試驗證:setFocusable方法的效果只有第一次使用時有效,也就是說若在布局文件里面設(shè)置:
android:focusable="false",即使你在代碼中設(shè)置此控件屬性:editText.setFocusable(true);也不能對它進行編輯。
即setFocusable方案不可行。經(jīng)過摸索得出可行方案。
利用 editText.setInputType(InputType.TYPE_NULL);來禁止手機軟鍵盤。
editText.setInputType(InputType.TYPE_CLASS_TEXT);來開啟軟鍵盤。
應(yīng)用程序默認為開啟狀態(tài)。
特別注意:這種方法也只能禁止軟鍵盤,若手機自帶硬鍵盤,此方案失效。
附測試demo:
public class EditTextTest extends Activity { /** test EditText forbid input function demo */ EditText editText; boolean flag = true; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); editText = (EditText) findViewById(R.id.editText1); Button btn = (Button) findViewById(R.id.button1); btn.setOnClickListener(new OnClickListener() { public void onClick(View v) { if (flag==true) { System.out.println("開啟軟鍵盤"); editText.setInputType(InputType.TYPE_CLASS_TEXT); flag = false; }else { System.out.println("禁止軟鍵盤"); editText.setInputType(InputType.TYPE_NULL); flag = true; } } }); } }
希望本文所述對大家Android程序設(shè)計有所幫助。
- Android高仿微信支付密碼輸入控件
- Android自定義控件通用驗證碼輸入框的實現(xiàn)
- Android如何禁止向EditText控件中輸入內(nèi)容詳解
- Android用戶輸入自動提示控件AutoCompleteTextView使用方法
- Android 帶清除功能的輸入框控件實例詳解
- Android開發(fā)中給EditText控件添加TextWatcher監(jiān)聽實現(xiàn)對輸入字數(shù)的限制(推薦)
- Android帶清除功能的輸入框控件EditTextWithDel
- Android輸入框控件ClearEditText實現(xiàn)清除功能
- Android WebView控件捕獲用戶輸入的信息
- Android自定義view實現(xiàn)輸入控件
相關(guān)文章
Android中使用Matrix控制圖形變換和制作倒影效果的方法
這篇文章主要介紹了Android中使用Matrix控制圖形變換和制作倒影效果的方法,用Matrix來作矩陣變化十分強大,文中的制作倒影的例子便是一個十分巧妙的運用,需要的朋友可以參考下2016-04-04一文帶你了解Android?Flutter中Transform的使用
flutter的強大之處在于,可以對所有的widget進行Transform,因此可以做出非??犰诺男Ч1疚木蛠泶蠹伊私庖幌耇ransform的具體使用,感興趣的可以了解一下2023-01-01Android自定義PopupWindow實現(xiàn)炫酷的IOS對話框效果
這篇文章主要給大家介紹如何在android中實現(xiàn)高仿ios對話框效果,代碼簡單易懂,非常不錯,具有一定的參考借鑒價值,需要的朋友參考下吧2018-05-05Android開發(fā)使用HttpURLConnection進行網(wǎng)絡(luò)編程詳解【附源碼下載】
這篇文章主要介紹了Android開發(fā)使用HttpURLConnection進行網(wǎng)絡(luò)編程的方法,結(jié)合實例形式分析了Android基于HttpURLConnection實現(xiàn)顯示圖片與文本功能,涉及Android布局、文本解析、數(shù)據(jù)傳輸、權(quán)限控制等相關(guān)操作技巧,需要的朋友可以參考下2018-01-01Android自定義View實現(xiàn)loading動畫加載效果
項目開發(fā)中對Loading的處理是比較常見的,安卓系統(tǒng)提供的不太美觀,引入第三發(fā)又太麻煩,這時候自己定義View來實現(xiàn)這個效果。這篇文章主要介紹了Android自定義View實現(xiàn)loading動畫加載效果,需要的朋友可以參考下2017-03-03Android手把手教大家制作APP首頁(下拉刷新、自動加載)
這篇文章主要為大家詳細介紹了Android手把手教大家制作APP首頁,實現(xiàn)下拉刷新、自動加載功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-01-01Android中DrawerLayout實現(xiàn)側(cè)滑菜單效果
這篇文章主要為大家詳細介紹了Android中DrawerLayout實現(xiàn)側(cè)滑菜單效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-10-10