【发布时间】:2016-05-20 08:38:32
【问题描述】:
有什么方法可以强制在 NumberPassword 模式下显示 Android 的 SoftKeyboard,而我的活动中没有实际的 EditText?
我设法通过在我的 AndroidManifest.xml 上添加 android:windowSoftInputMode="stateAlwaysVisible" 在活动开始时显示键盘,通过在扩展 TextView 的 CustomView 类中覆盖 onKeyPreIme 并处理触摸来使其无法关闭通过在我的 Activity 中覆盖 onKeyUp 来自行处理事件。
如果我直接在 CustomView 的 XML 布局中添加 android:inputType="numberPassword",则 Activity 的 onKeyUp 会被绕过,键盘会在我的 CustomView 中写入字符,KEYCODE_ENTER 会关闭我的键盘。
我想要实现的是:
- SoftKeyboard 总是在 Activity Start 和 Resume 从后台退出
- 无法使用 KEYCODE_ENTER 或 KEYCODE_BACK 关闭
- 9位布局+退格
- 自己处理关键压力,让它做其他事情而不是写字符
【问题讨论】:
-
你能展示一些代码来更好地了解你在做什么吗?
-
与stackoverflow.com/questions/13591012/… 非常接近,但没有 EditText。 Numbers / Backspace 将根据按下的键触发不同的方法。该解决方案不起作用,因为至少在我的 6.0.1 Moto X 上,KEYCODE_ENTER 导致键盘消失。
标签: android android-softkeyboard