【发布时间】:2011-04-17 12:33:12
【问题描述】:
我的 EditText 需要接受由部分单词、名称等组成的输入。至少在我的 HTC Desire 上,这很困难,因为键盘想要建议和/或更正某些条目(例如,将“gor”更改为“for ”)。我尝试在视图上设置 textNoSuggestions,但这并不能解决问题。
有什么简单的解决办法吗?
【问题讨论】:
标签: android
我的 EditText 需要接受由部分单词、名称等组成的输入。至少在我的 HTC Desire 上,这很困难,因为键盘想要建议和/或更正某些条目(例如,将“gor”更改为“for ”)。我尝试在视图上设置 textNoSuggestions,但这并不能解决问题。
有什么简单的解决办法吗?
【问题讨论】:
标签: android
试试这个:
android:inputType="textFilter"
如果这不起作用,请尝试:
android:inputType="textFilter|textNoSuggestions"
【讨论】:
textVisiblePassword。
您可以通过代码执行此操作。如下设置 EditText 的输入类型:
txtEmail = (EditText) findViewById(R.id.txtEmail);
txtEmail.setInputType(InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS);
有关所有可用输入类型选项的列表,请参阅 http://developer.android.com/reference/android/text/InputType.html
【讨论】:
其他建议是正确的,但SwiftKey 已决定it will ignore the inputtype values "in response to user requests"。虽然我同意这是一个坏主意,因为它与 Google 指南相矛盾,并且开发人员通常有充分的理由禁用自动更正(如用户名字段、姓氏等),但它仍然是 Android 设备最常用的键盘应用程序,所以这可能是个大问题。
解决方法是使用任一
android:inputType="textVisiblePassword"
或
.setInputType(InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD);
【讨论】:
如果您想要 多行 EditText 而不显示下划线(自动更正),请尝试以下操作:
myEditText.setInputType(InputType.TYPE_CLASS_TEXT |
InputType.TYPE_TEXT_FLAG_MULTI_LINE | InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS);
这里是 XML:android:inputType="textNoSuggestions|textMultiLine"。
【讨论】: