Android EditText inputType ="none"不起作用,变为 "textMultiLine"

标签 android android-layout android-widget

使用 Android 1.6(4) 和 2.3.3(10) 进行测试。

我制作了一个简约的测试应用程序来演示这一点,它所做的就是加载 xml:

setContentView(R.layout.main); 

xml 是:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >

<TextView
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="@string/hello" />

<EditText
    android:id="@+id/editText1"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:inputType="none"
    android:ems="10" >

</EditText>

问题:

当设置 inputType="none" 时,执行期间的实际输入类型变为 textMultiLine(0x00020001),我已经用调试器检查过了。

另一方面,如果我使用 inputType="text",它会按预期工作。

这是 Android 中的错误吗?

最佳答案

我有同样的问题:通过 xml 定义输入类型不起作用。

然后,为了修复它,我以编程方式设置了输入类型:

@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState)
    {
    ...
    editText1= (EditText) super.getActivity().findViewById(R.id.editText1);
    editText1.setInputType(InputType.TYPE_NULL);    // none...
    ...
    }

这对我有用。

关于Android EditText inputType ="none"不起作用,变为 "textMultiLine",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10200950/

相关文章:

android - 悬停查看

android - 具有磁盘缓存支持的类似改造的库

android根据当前列值更新数据库列

android - 是否可以将 jetpack compose 与 xml 集成?

java - 图像布局安卓

android - 底部行为 subview 更改并不总是有效

android - 在 Android 上调用双号电话号码的快捷方式

android - 如何在 Android Kotlin 的 For 循环中获取列表项的索引?

java - 将字符串转换为日期并计算日期差

android - 小部件 ListView 未使用 notifyAppWidgetViewDataChanged 进行更新