如何解决强制执行编辑文本的输入法
|| 我已经尝试过寻找答案,但是似乎找不到答案。 我是否可以阻止用户更改我创建的edittext的输入方法?目前,我有一个edittext,我只想通过显示与电话小键盘输入相似的软键盘来接受用户的号码。通过在XML中声明以下内容: <EditText
android:layout_height=\"wrap_content\"
android:layout_width=\"fill_parent\"
android:singleLine=\"true\"
android:inputType=\"phone\"
android:numeric=\"decimal\"
/>
并且还将自定义DigitsKeyListener附加到在getInputType方法中返回InputType.TYPE_CLASS_PHONE的edittext上,我成功地使edittext只接受十进制数字,并使用了我想要的软键盘。
但是,如果用户未使用默认的Android键盘,则问题开始。如果用户将输入法更改为自定义键盘或某些区域设置(例如日语IME),则显示的软键盘对于我的应用程序而言将变得缺乏。
可以通过长期按住edittext并选择其他输入法来实现,或者在另一个应用程序中对其进行更改也会影响我的应用程序。
我的问题是,我有什么办法可以防止在应用程序中使用其他输入法?我希望我的应用程序始终使用默认的Android键盘,而别无其他。
解决方法
据我所知,不可能强迫用户在应用程序内使用特定的系统键盘(参考:Android应用程序特定的软键盘)。不过,该参考文献确实向您展示了如何创建自己的参考书。创建一个聚焦于ѭ1并为用户提供一组数字的视图时,弹出视图并不困难。
您也可以在
EditText
中设置android:digits=\"0123456789\"
属性,以禁止输入其他字符。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。