Rol*_*and 9 android android-widget android-layout
测试Android 1.6(4)和2.3.3(10).
我已经制作了一个简约的测试应用程序来演示这个,它所做的只是加载xml:
setContentView(R.layout.main);
Run Code Online (Sandbox Code Playgroud)
而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>
Run Code Online (Sandbox Code Playgroud)
问题:
当inputType="none"在执行期间设置实际输入类型时textMultiLine(0x00020001),我已经用调试器检查了它.
另一方面,如果我使用inputType="text"它按预期工作.
这是Android中的错误吗?
jsa*_*arb 19
我有同样的问题:通过xml定义输入类型不起作用.
然后,要修复它,我以编程方式设置输入类型:
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState)
{
...
editText1= (EditText) super.getActivity().findViewById(R.id.editText1);
editText1.setInputType(InputType.TYPE_NULL); // none...
...
}
Run Code Online (Sandbox Code Playgroud)
这对我行得通.
据我所知,这是android代码中的一个错误.看看这个用于参考 - 如何在Android中通过XML编辑EditText?
GalDude33建议 -
android:clickable="false"
android:cursorVisible="false"
android:focusable="false"
android:focusableInTouchMode="false"
Run Code Online (Sandbox Code Playgroud)
设置InputType =“ none” xml不起作用,但是如果您正在使用数据绑定,则可以使用绑定语法来设置Input类型。
导入类型..
<data>
<import type="android.text.InputType" />
</data>
然后绑定值
<EditText
android:id="@+id/edit_text"
android:inputType="@{InputType.TYPE_NULL}" />
| 归档时间: |
|
| 查看次数: |
15165 次 |
| 最近记录: |