如何以编程方式设置EditText的输入类型?我尝试:

mEdit.setInputType(InputType.TYPE_TEXT_VARIATION_PASSWORD);

这似乎没有任何效果。


当前回答

芬兰湾的科特林:

    val password = EditText(this)
    password.inputType = InputType.TYPE_CLASS_TEXT or InputType.TYPE_TEXT_VARIATION_PASSWORD
    password.hint = "Password"

其他回答

field.setInputType(InputType.TYPE_CLASS_TEXT);

我知道期望的答案是Java。但这里是我的2美分的建议,总是尝试处理XML中的视图相关的东西(至少基本的东西),所以我宁愿使用XML属性,而不是在java中处理这个用例

    <EditText
     android:inputType="textPassword"/>

要以编程方式设置EditText的输入类型,必须指定输入类类型为文本。

editPass.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD);

尝试将此添加到布局中的EditText/TextView标签

android:password="true"

编辑:我刚刚重读了你的帖子,也许你需要在施工后这样做。我不明白你的片段为什么不管用。

芬兰湾的科特林:

    val password = EditText(this)
    password.inputType = InputType.TYPE_CLASS_TEXT or InputType.TYPE_TEXT_VARIATION_PASSWORD
    password.hint = "Password"