Android-EditText实现小眼睛按钮显示密码
1、密码框如何实现
在进行安卓开发时,需要获取用户输入内容我们通常需要使用EditText组件获取用户输入。在获取密码等敏感信息时就要对输入内容进行隐藏处理。实现这一需求,将EditText的inputType属性设置为textPassword模式即可。
xml布局时
android:inputType="textPassword"
java代码布局
this.EditText.setInputType(InputType.TYPE_CLASS_TEXT |
InputType.TYPE_TEXT_VARIATION_PASSWORD);
以上将EditText文本框设置为隐藏模式
2、添加小眼睛按钮
小眼睛类似的图标,是一个image。我们可以在将一个imageview布局到对应位置,然后添加其点击事件实现,缺点是大小和其他布局不好确定,适配相对麻烦。
另外一种方式我们可以通过TextView和EditText组件可以设置的4个方向的drawable实现。
xml布局时添加drawable
android:drawableRight="@drawable/password_eye_icon_idle"
以上是通过xml布局的方式设置了右边的drawable,其他三个方向以此类推。此方式方便的设置了drawable,缺点是无法在xml中调整drawable大小,可在代码中调整。
//this.EditText伪代码表示方法,指EditText对象
Drawable rightDrawable=this.EditText.getCompoundDrawables()[2];//获取drawable对象,
//下标0~3依次对应left、top、right、bottom方向的drawable
rightDrawable.setBounds(-10,0,50,70);//设置drawable大小
java代码添加drawable
//通过资源拿到对应drawable对象
Drawable drawable = getResources().getDrawable(R