Android 编辑文本而不自动更正

Android 编辑文本而不自动更正,android,android-layout,android-edittext,Android,Android Layout,Android Edittext,我想要一个没有自动更正的编辑文本。 我已经设置了textNoSuggestions输入类型,如下所示: <EditText android:id="@+id/txtTarga" android:layout_width="150dp" android:layout_height="wrap_content" android:ems="10" android:hint="Targa" android:inputType="textNoSugg

我想要一个没有自动更正的编辑文本。 我已经设置了textNoSuggestions输入类型,如下所示:

 <EditText
    android:id="@+id/txtTarga"
    android:layout_width="150dp"
    android:layout_height="wrap_content"
    android:ems="10"
    android:hint="Targa"
    android:inputType="textNoSuggestions|textCapCharacters" >

大写标志有效,但仍在自动更正


如何禁用它?

您可以通过代码进行尝试,如下所示:

EditText edittext = (EditText)findViewById(R.id.txtTarga);
edittext.setInputType(InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS);

inputType textVisiblePassword可以做到这一点(大多数情况下,正如Commonware所指出的,它只是一个请求,您可能会发现自己在哪里可以找到设备,在哪里不可以找到设备)

根据,一些设备可能支持或不支持inputType属性

然而,这似乎更有效

android:inputType="textNoSuggestions|textVisiblePassword"
在Xml中

不知道为什么会这样。但效果很好


textNoSuggestions
并非在每个键盘上都有效。公认的答案
inputType=“textVisiblePassword”
有效,但它会从大多数键盘上删除表情符号


我发现设置
inputType=“textUri”
有效并保持添加表情的能力。

inputType
是一个请求。输入法编辑器的开发人员可能会也可能不会满足所有这些请求。是否满足任何给定的请求将取决于输入法编辑器,不同的设备将具有不同的编辑器。android:inputType=“textNoSuggestions | textVisiblePassword”。这似乎适用于运行4.0.4的三星Galaxy S2,android:inputType=“textPassword”可以像输入密码一样转换
******
中的所有文本。你的行为相同还是不同?(我没有投它)是的,它显示为******,但@Error404的问题是密码字段自动建议列表被填充,需要抑制。但如果你添加
android:inputType=“textNoSuggestions”
它不会给你任何建议。至少对我来说,跨设备的行为是不同的。一些设备会对android:inputType=“textNoSuggestions”提出建议。因此,提供了替代解决方案。如果可以在
三星Galaxy S4上测试。将my above与'class casting to TextView'一起使用,并将其作为EdittextView使用
android:inputType="textNoSuggestions|textVisiblePassword"
<EditText
        android:id="@+id/password"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="5dp"
        android:hint="password"
        android:imeOptions="actionDone"
        android:inputType="textPassword"
        android:singleLine="true"
        />
    // casting done from EditText to TextView

    TextView mPassword = (TextView) findViewById(R.id.password);