使用Android:Digits属性限制字符停止操作下一个按钮工作

Buz*_*zby 13 android action digits

我在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设备.

Buz*_*zby 24

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

  • 但是android:maxLines = 1并不适用于android:digits (4认同)