Android Ice Cream Sandwich Edittext:禁用拼写检查和自动换行

发布于 2024-12-29 04:13:04 字数 1119 浏览 0 评论 0原文

在运行 Android 4.0(冰淇淋三明治)的 Android 模拟器上进行测试时,我注意到 Edittext 做了一些非常奇怪的事情。

首先,它用红色强调了每个被识别为“拼写错误”的单词。我如何禁用此功能? 其次,虽然在布局 XML 中我已指定启用了 android:scrollHorizo​​ntally="true" 自动换行:如何禁用此功能?以下是 Edittext 的布局 XML 代码:

    <EditText
        android:id="@+id/editor"
        android:layout_width="40dp"
        android:layout_height="fill_parent"
        android:layout_alignParentRight="true"
        android:layout_below="@+id/toolbar"
        android:layout_toRightOf="@+id/toolbarleft"
        android:paddingBottom="0dp"
        android:paddingRight="0dp"
        android:scrollHorizontally="true"
        android:text=""
        android:inputType="textMultiLine" >
        
        <requestFocus />
    </Edittext>

这是我需要禁用的拼写检查器的示例:

< img src="https://i.sstatic.net/mMyHk.jpg" alt="拼写检查器演示">
(来源:abstract-thoughts.com< /a>)

非常感谢!

Whilst testing on the Android Emulator running Android 4.0 (Ice Cream Sandwich), I have noticed that the Edittext does some quite strange things.

Firstly, it underlines every word identified as "misspelt" in red. How do I disable this?
Secondly, although in the layout XML I have specified android:scrollHorizontally="true" word-wrap is enabled: how do I disable this as well? Here is the Layout XML code for the Edittext:

    <EditText
        android:id="@+id/editor"
        android:layout_width="40dp"
        android:layout_height="fill_parent"
        android:layout_alignParentRight="true"
        android:layout_below="@+id/toolbar"
        android:layout_toRightOf="@+id/toolbarleft"
        android:paddingBottom="0dp"
        android:paddingRight="0dp"
        android:scrollHorizontally="true"
        android:text=""
        android:inputType="textMultiLine" >
        
        <requestFocus />
    </Edittext>

Here is an example of the spell checker I need to disable:

Demonstration of Spell-Checker
(source: abstract-thoughts.com)

Thanks very much!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(7

习惯成性 2025-01-05 04:13:04

禁用拼写检查
为了摆脱拼写检查,您必须在 XML 中指定 EditText 的输入类型,如下所示:

android:inputType="textNoSuggestions"

但是,我的 EditText 还需要是多行的,所以我添加了EditText 的 XML 中添加以下行:

android:inputType="textMultiLine|textNoSuggestions"

禁用自动换行
如前所述,XML 属性 android:scrollHorizo​​ntally="true" 不起作用。然而,奇怪的是,如果通过 Java 完成它却可以工作。以下是实现不自动换行的必要代码:

mEditText.setHorizo​​ntallyScrolling(true);

Disabling Spell-Checking
In order to get rid of spell checking you must specify the EditText's InputType in the XML as the following:

android:inputType="textNoSuggestions"

However, my EditText needed also to be multiline, so I have added the following line to the EditText's XML:

android:inputType="textMultiLine|textNoSuggestions"

Disabling Word-Wrap
As noted, the XML attribute android:scrollHorizontally="true" does not work. However, strangely, if it is done through Java it does work. Here is the necessary code to achieve no word wrapping:

mEditText.setHorizontallyScrolling(true);

溺渁∝ 2025-01-05 04:13:04

禁用 EditText 中的拼写检查。

在 Android 4.0+ 中,有时我的 Textview 中会出现红色下划线,因此我添加了属性...

android:inputType="textNoSuggestions" 

textNoSuggestions指示 IME 不应显示任何
基于词典的单词建议。

以下是我们可以在中定义的可能属性的列表:
android:inputType

禁用自动换行

请记住,属性 android:scrollHorizo​​ntally="true" 不起作用,因此这是解决方案:

mEditText.setHorizontallyScrolling(true);

Disabling Spell-Checking in EditText.

In Android 4.0+ sometimes I get a red underline in my Textview so i add the property ...

android:inputType="textNoSuggestions" 

textNoSuggestions: to indicate that the IME should not show any
dictionary-based word suggestions.

Here is a list of possible properties that we can define in :
android:inputType

Disabling Word-Wrap

remember that the property android:scrollHorizontally="true" doesn't work, so this is the solution:

mEditText.setHorizontallyScrolling(true);
你与清晨阳光 2025-01-05 04:13:04

在您的 Java 类中,您可以添加到 Edittext 对象...

  wire1type = (EditText)findViewById(R.id.wire1type);
  wire1type.setInputType( ~(InputType.TYPE_TEXT_FLAG_AUTO_CORRECT) );

这会清除自动更正标志,并将在 API 4 中工作。

In your Java class you can add to the Edittext object...

  wire1type = (EditText)findViewById(R.id.wire1type);
  wire1type.setInputType( ~(InputType.TYPE_TEXT_FLAG_AUTO_CORRECT) );

This clears out the autocorrect flag and will work in API 4.

为你拒绝所有暧昧 2025-01-05 04:13:04
android:inputType="textMultiLine|textPhonetic"

为我删除了所有红色下划线。

android:inputType="textMultiLine|textNoSuggestions"

产生编译错误。

我使用 Android API 1.6。

android:inputType="textMultiLine|textPhonetic"

removed all red underlines for me.

android:inputType="textMultiLine|textNoSuggestions"

produces compilation error.

I use Android API 1.6.

水水月牙 2025-01-05 04:13:04

通过代码禁用一般文本输入的拼写检查器:

mEditText.setInputType(InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS);

Disabling the spell checker for general text input via code:

mEditText.setInputType(InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS);
用心笑 2025-01-05 04:13:04

删除 android:inputType="" 一切都应该很好。

remove android:inputType="" and all should be well.

鹊巢 2025-01-05 04:13:04

要禁用换行,您必须使用 Horizo​​ntalScrollView 换行(不是双关语)您的 EditText 并将您的layout_width设置为match_parent。

To disable line wrapping you have to wrap (pun not intended) your EditText with an HorizontalScrollView and set your layout_width to match_parent.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文