我试图在输入类型为文本密码的编辑文本中向用户显示键入的密码。
我像这样在切换图标上实现了 gesturelistener-
public boolean onTouch(View view, MotionEvent motionEvent) {
switch (view.getId())
{
case R.id.ivPasswordToggle:
switch ( motionEvent.getAction() ) {
case MotionEvent.ACTION_DOWN:
Toast.makeText(getContext(),"show",Toast.LENGTH_SHORT).show();
etPassword.setInputType(InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD);
break;
case MotionEvent.ACTION_UP:
etPassword.setInputType(InputType.TYPE_TEXT_VARIATION_PASSWORD | InputType.TYPE_CLASS_TEXT);
Toast.makeText(getContext(),"hide",Toast.LENGTH_SHORT).show();
break;
}
break;
}
return true;
}
我不知道出了什么问题,我们将不胜感激。
原文由 Apoorv Singh 发布,翻译遵循 CC BY-SA 4.0 许可协议
(针对 AndroidX 更新)
自支持库 v24.2.0。你可以很容易地做到这一点
你需要做的只是:
TextInputEditText
结合TextInputLayout
passwordToggleEnabled
属性将使密码切换出现在您的根布局中不要忘记添加
xmlns:app="http://schemas.android.com/apk/res-auto"
您可以使用以下方式自定义密码切换:
app:passwordToggleDrawable
- 可绘制用作密码输入可见性切换图标。app:passwordToggleTint
- 用于密码输入可见性切换的图标。app:passwordToggleTintMode
- 用于应用背景色调的混合模式。TextInputLayout 文档 中有更多详细信息。