我创建了自定义编辑文本,我在其中将InputType设置为this.setInputType(InputType.TYPE_CLASS_NUMBER);
,但问题是它在7.0(牛轧糖)以下完美运行但是在7.0以上它显示了字母数字键盘。
这是Nougat的问题,还是我做错了
有关我使用代码将setSoftInputMode设置为ADJUST PAN
的信息setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN
|WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);
并设置数字键盘使用this.setInputType(InputType.TYPE_CLASS_NUMBER);
已修改 当我删除 -
setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN
|WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);
从活动开始每件事情都工作正常(数字键盘在数字编辑文本中打开,字母数字键盘在字母数字编辑文本中打开)除了内容没有向上方向意味着键盘隐藏编辑文本(因为忽略了这个属性SOFT_INPUT_ADJUST_PAN)
帮助表示感谢
答案 0 :(得分:3)
我尝试在7+设备上使用setInputType(InputType.TYPE_CLASS_NUMBER),但没有看到您描述的行为。寻找另一个线程,runnable或任何在打开或同时更改EditText的InputType的回调。
答案 1 :(得分:1)
尝试在softInputMode
文件中设置Manifest
,它可能会为您提供所需的行为。
<activity
android:name=".YourActivity"
android:label="@string/app_name"
android:windowSoftInputMode="adjustPan|stateAlwaysHidden" />