13

我在 Android 应用程序上有许多 EditText 字段,并且我使用 android:digits 来阻止输入无效字符。

例如:( android:digits="@string/validchars" 其中“validchars”是所有有效字符的字符串资源 - 例如 AZ、0-9 和一些标点符号)

问题是,如果用户点击软键盘上的 ENTER 键,它曾经将他们带到下一个字段,但由于我添加了 android:digits 位,这已经停止工作。我尝试将 \n 添加到,validchars但这仅允许在单行文本框(!)中进行回车,因此无济于事。我试过摆弄 imeOptions (添加actionNext等),但这似乎也不能解决它。我已经阅读了有关 TextWatchers 和 InputFilters 的信息,但对于我正在尝试做的事情来说,两者似乎都过于复杂,并且该android:digits位在阻止无效字符方面效果很好。

有没有人有任何想法?

我正在使用 Android SDK 版本 8 并针对 2.2 和 2.3.5 设备。

4

1 回答 1

25

在对 EditText 可用的属性进行了一番探索之后,我发现当我添加 android:singleLine="true" 时,ENTER 键现在将焦点移动到下一个字段,即使 android:digits 限制输入的字符也是如此。问题解决了!(对我来说,无论如何!)

于 2012-07-09T08:04:47.730 回答