有没有一种聪明的方法可以让用户在 android EditText 中隐藏和查看密码?许多基于 PC 的应用程序允许用户执行此操作。
原文由 jacknad 发布,翻译遵循 CC BY-SA 4.0 许可协议
有没有一种聪明的方法可以让用户在 android EditText 中隐藏和查看密码?许多基于 PC 的应用程序允许用户执行此操作。
原文由 jacknad 发布,翻译遵循 CC BY-SA 4.0 许可协议
我使用了一个 OnClickListener(),它与我想用作工具的按钮相关联。
private EditText email_et, contraseña_et;
protected void onCreate(Bundle savedInstanceState) {
....
contraseña_et = (EditText) findViewById(R.id.contraseña_et);
....
vercontra_btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
int inputType = contraseña_et.getInputType();
if (inputType == 129){
contraseña_et.setInputType(1);
} else {
contraseña_et.setInputType(129);
}
contraseña_et.setSelection(contraseña_et.getText().length());
}
});
阅读文档时,int 值似乎有所不同,所以我进行了调试以找到正确的值,它工作得非常棒,而且这种方式更容易一些。
[Contraseña 是西班牙语的密码,顺便说一句]
原文由 Nkogmzra 发布,翻译遵循 CC BY-SA 4.0 许可协议
3 回答969 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
1 回答843 阅读✓ 已解决
2 回答957 阅读
2 回答892 阅读
1 回答830 阅读
2 回答698 阅读
您可以动态更改 TextView 的属性。如果您将 XML 属性
android:password
设置为 true,如果您将其设置为 false,则视图将显示点,则显示文本。使用 setTransformationMethod 方法,您应该能够从代码中更改此属性。 (免责声明:我没有测试该方法在视图显示后是否仍然有效。如果您遇到问题,请给我留言让我知道。)
完整的示例代码是
隐藏密码。要显示密码,您可以设置现有的转换方法之一或实现一个空的 TransformationMethod ,它对输入文本不做任何事情。