java - 如何使用Android 12键键盘实现PIN INPUT风格的屏幕

标签 java android keyboard

这是我的问题。我有 4 个 EditText,我希望它们表现得像一个 pin 系统:

  • 每当一个字母被数字化到编辑文本时,它就会自动移动到下一个字母(使用 TextWatcher 实现)。

  • 每当按下退格键并且当前的 eddittext 为空时,它都会从先前的 edittext 中删除文本(根据此答案 Android EditText delete(backspace) key event 实现)。

我能够实现这个系统,但是该系统无法使用 12 键软键盘运行,因为每个键有多个字母。 用户只能使用每个键的第一个字母,因为每当进行输入时,每个 EditText 的 TextWatcher 都会自动传递到下一个 EditText。

有人知道如何解析 12 键键盘的这种输入吗?android 中有什么功能可以强制用户使用全键盘吗?

任何帮助都会有帮助。 :)

提前致谢。

最佳答案

您应该使用 inputType="number" 作为 EditText xml 属性来强制使用右键盘。

关于java - 如何使用Android 12键键盘实现PIN INPUT风格的屏幕,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19291420/

相关文章:

java - 具有 RESTFul API 和静态 Web 的独立 Java 应用程序

ubuntu - 如何配置俄语键盘布局(并通过 win+space 切换 US<->RU)?

java - 第一次尝试设置测试数据库但得到 com.mysql.jdbc.exceptions.jdbc4.CommunicationsException : Communications link failure

java - 从 reSTLet 中检索参数

java - 是否可以制作一个透明背景的窗口?

android - javax.net.ssl.SSLException : hostname in certificate didn't match in Android 异常

android - SHOUTcast广播流媒体不适用于Kitkat

android - 运行用于 Room 迁移的 Android Instrumented 测试时获取 GSON 的 ClassNotFoundException

javascript - Jquery触发key.Code事件

android - 如何在键盘处于 Activity 状态时使布局可滚动?