在我的应用程序中,我有一个EditText,用户只有读访问权,没有写访问权。
在代码中,我设置android:enabled="false"。
虽然EditText的背景变成了黑色,但当我点击它时,键盘就会弹出来,我可以更改文本。
我应该设置什么来禁用EditText?
在我的应用程序中,我有一个EditText,用户只有读访问权,没有写访问权。
在代码中,我设置android:enabled="false"。
虽然EditText的背景变成了黑色,但当我点击它时,键盘就会弹出来,我可以更改文本。
我应该设置什么来禁用EditText?
当前回答
As android:editable="false"已弃用 在xml中
使用android:enabled="false",这很简单。为什么要使用更多的代码?
如果你想在java课上使用,你也可以通过编程的方式使用它
editText.setEnabled(false);
其他回答
在你的XML代码中设置这个,它可以工作。
android:focusableInTouchMode=“false”
你可以使用android:focusable="false",但也需要禁用光标否则 复制/粘贴功能仍然可以工作。
因此,使用
android:focusable="false"
android:cursorVisible="false"
我相信正确的方法是设置android:editable="false"。
如果你想知道为什么我的链接指向TextView的属性,你的答案是,因为EditText从TextView继承:
EditText是一个薄薄的贴面 配置自身为的TextView 可编辑的。
更新: 正如下面的评论中提到的,editable已弃用(从API级别3开始)。您应该使用inputType(值为none)。
As android:editable="false"已弃用 在xml中
使用android:enabled="false",这很简单。为什么要使用更多的代码?
如果你想在java课上使用,你也可以通过编程的方式使用它
editText.setEnabled(false);
使用此选项可禁用用户输入
android:focusable="false"
android:editable="false"此方法已弃用。