Android用代码实现EditText不可编辑
2011-04-20 16:29
661 查看
在xml文件中实现EditText不可编辑很简单,只要设置android:editable的值为false即可,可是在代码中却没有setEditable方法;
在代码中设置EditText不可编辑只能使用以下代码:
下面是一个例子:
在代码中设置EditText不可编辑只能使用以下代码:
editText.setFilters(new InputFilter[] { new InputFilter() { @Override public CharSequence filter(CharSequence source, int start, int end, Spanned dest, int dstart, int dend) { return source.length() < 1 ? dest.subSequence(dstart, dend) : ""; } } });
下面是一个例子:
import android.app.Activity; import android.os.Bundle; import android.text.InputFilter; import android.text.Spanned; import android.view.View; import android.widget.Button; import android.widget.EditText; /** * Class which shows how to lock and unlock EditText component * * @author FaYnaSoft Labs */ public class Main extends Activity { private EditText editText; private boolean value = false; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); editText = (EditText) findViewById(R.id.textId); editText.setText("EditText component"); Button b = (Button) findViewById(R.id.btnId); b.setText("Lock/Unlock"); b.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (value) { value = false; } else { value = true; } lockUnlock(value); } }); } /** * Method which locks and unlocks editText component * @param value our boolean value which using in or if operator */ private void lockUnlock(boolean value) { if (value) { editText.setFilters(new InputFilter[] { new InputFilter() { @Override public CharSequence filter(CharSequence source, int start, int end, Spanned dest, int dstart, int dend) { return source.length() < 1 ? dest.subSequence(dstart, dend) : ""; } } }); } else { editText.setFilters(new InputFilter[] { new InputFilter() { @Override public CharSequence filter(CharSequence source, int start, int end, Spanned dest, int dstart, int dend) { return null; } } }); } } }
相关文章推荐
- Android 实现EditText不可编辑
- android 实现edittext的动态可编辑和不可编辑
- Android 的EditText实现不可编辑
- Android 实现Edittext 不可编辑形态
- Android中EditText实现不可编辑解决办法
- [android]How to implement an not editable scrollable EditText?(如何实现一个不可编辑的带滚动条的EditText?) .
- Android中EditText实现不可编辑解决办法
- Android中EditText实现不可编辑
- Android实现带有删除按钮的EditText示例代码
- android中ListView中的EditText不可编辑
- android中将EditText改成不可编辑的状态
- android 设置edittext 不可编辑 光标消失 / 让edittex不首次启动弹出输入法
- Android的EditText设置可编辑与不可编辑的方法
- [置顶] Android开发之使一打开activity等界面Edittext获取焦点,弹出软键盘java代码实现
- android 点击EditText始终不弹出软件键盘实现代码
- Android 设置EditText不可编辑
- 【EditText】Android设置EditText不可编辑
- EditText 不可编辑状态的实现
- Android中EditText设置editable属性为不可编辑的问题
- Android EditText设置可编辑和不可编辑状态