在我的Android应用程序中,我使用EditText从用户那里获取文本输入。 我希望EditText只接受选择性字符,因为我在xml文件中提到了EditText的以下属性。
android:digits="@string/customDigits"
和strings.xml中提到了customDigits
<string name="customDigits">\u0022;\u005C;&<>\ abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!#$%\'()*+,-./:;=?@[]_`{};|~^"*"</string>
我为我的Android应用程序提供了多语言支持。 当我选择FRENCH,GERMAN,SPANISH和EditText等语言时,它会显示正确的英文键盘,如下所示: -
但是当我选择JAPANESE语言并且EditText处于焦点时,它会显示Japanes键盘,如图所示: -
但我想默认显示英文键盘。 请给我解决方案。
答案 0 :(得分:0)
你可以尝试
input.setRawInputType(Configuration.KEYBOARD_QWERTY);
但是从用户体验的角度来看,我会说你应该“修理”这里没有什么。如果用户决定他想要日语,他会得到日语。您期望某些字符,但它与用户语言设置无关,也与他使用的键盘类型无关。这真的不是你的兴趣 - 如果失败就拒绝他的输入并确保错误消息(或UI)清楚地表明你希望在EditText中输入ASCII(或其他)。
答案 1 :(得分:0)