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設置為可輸入狀態(tài)。
經(jīng)過測試驗證:setFocusable方法的效果只有第一次使用時有效,也就是說若在布局文件里面設置:
android:focusable="false",即使你在代碼中設置此控件屬性:editText.setFocusable(true);也不能對它進行編輯。
即setFocusable方案不可行。經(jīng)過摸索得出可行方案。
利用 editText.setInputType(InputType.TYPE_NULL);來禁止手機軟鍵盤。
editText.setInputType(InputType.TYPE_CLASS_TEXT);來開啟軟鍵盤。
應用程序默認為開啟狀態(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程序設計有所幫助。
- 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)輸入控件
相關文章
Android 配置gradle實現(xiàn)VersionCode自增實例
今天小編就為大家分享一篇Android 配置gradle實現(xiàn)VersionCode自增實例,具有很好的 參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-03-03
使用ListView實現(xiàn)網(wǎng)上訂餐首頁
這篇文章主要為大家詳細介紹了使用ListView實現(xiàn)網(wǎng)上訂餐首頁,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-01-01
Android getViewById和getLayoutInflater().inflate()的詳解及比較
這篇文章主要介紹了Android getViewById和getLayoutInflater().inflate()的詳解及比較的相關資料,這里對這兩種方法進行了詳細的對比,對于開始學習Android的朋友使用這兩種方法是個很好的資料,需要的朋友可以參考下2016-11-11
Android應用自動跳轉(zhuǎn)到應用市場詳情頁面的方法
最近在工作中遇到一個需求,推廣部門要求實現(xiàn)應用自動跳轉(zhuǎn)到應用市場詳情頁面,通過查找一些資料,實現(xiàn)出來了,覺得有必要整理下方便以后或者有需要的朋友們參考借鑒,下面來一起詳細看看Android應用自動跳轉(zhuǎn)到應用市場詳情頁面的方法吧。2016-12-12

