Android隐藏密码字段的键盘

Posted

技术标签:

【中文标题】Android隐藏密码字段的键盘【英文标题】:Android Hide keyboard for password field 【发布时间】:2011-05-17 14:38:00 【问题描述】:

同时为密码设置setInputType(InputType.TYPE_NULL); 字段,我们输入的文本是可见的,不会被 密码字段不需要的点。

InputType.TYPE_NULL | TYPE_TEXT_VARIATION_PASSWORD 将显示 键盘。

如果我们再次尝试将内容类型设置为 TYPE_TEXT_VARIATION_PASSWORD,虚拟键盘将启动 又出现了。

还尝试了以下方法,但也不起作用。 InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); imm.hideSoftInputFromWindow(editTextPasswordnew.getWindowToken(), 0);

InputType 设置为NULL 并设置TransformationMethod 仍然显示语言环境提示。

您能否提出任何其他可能的方法来说明我们如何实现 将虚拟键盘隐藏在密码EditText 字段上?

我们不希望用户从设置中执行此操作。

【问题讨论】:

你想让软键盘一直隐藏吗?或者只是在活动开始时,直到用户选择您的密码字段? 【参考方案1】:

查看androidManifest.xmlactivity 元素的android:windowSoftInputMode 标签。尤其是 stateHiddenstateAlwaysHidden 值。

但此设置会影响所有活动的行为,而不仅仅是一个特定控件。

【讨论】:

【参考方案2】:

我解决了这个问题。 在清单文件中添加这些字符串,尽管它们已被弃用。

android:editable="false"
android:password="true"

【讨论】:

以上是关于Android隐藏密码字段的键盘的主要内容,如果未能解决你的问题,请参考以下文章

EditText系列:密码输入可见与隐藏的坑

操作栏隐藏且不回来

关于Android平台显示隐藏软键盘输入法的方法总结

关于Android平台显示隐藏软键盘输入法的方法总结

Android中WebView中的文本字段被键盘隐藏

在 GET 中隐藏密码字段,但在 Django REST Framework 中隐藏密码字段,其中序列化程序中的 depth=1