首页 > 代码库 > EditText控件设置只读,动态控制EditText状态 输入框不自动打开输入法
EditText控件设置只读,动态控制EditText状态 输入框不自动打开输入法
Android的文本框输入控件(EditText),有时需要设置控件为只读,最简单的方法就是在layout xml文件中设置EditText的android:editable属性值为false即可,但是大部分时候我们需要在Java代码中动态设置EditTex的只读性,而android里没有提供对应的setEditable方法来设置EditText的只读属性,这时候可以通过以下方式变通实现:
public static void setEditTextReadOnly(TextView view){ view.setTextColor(R.color.read_only_color); //设置只读时的文字颜色 if (view instanceof android.widget.EditText){ view.setCursorVisible(false); //设置输入框中的光标不可见 view.setFocusable(false); //无焦点 view.setFocusableInTouchMode(false); //触摸时也得不到焦点 } }
当需要让他可编辑时 再把上面属性设为相反状态即可
getActivity().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);// 让输入框不自动打开输入法
EditText控件设置只读,动态控制EditText状态 输入框不自动打开输入法
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。