使用 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/