《android studio学习笔记》之“查看密码按钮的EditText”

来源:互联网 发布:淘宝卖家怎么屏蔽差评 编辑:程序博客网 时间:2024/05/18 01:06
《android studio学习笔记》之“查看密码按钮的EditText”

1、去标题栏



2、效果图

3、activity_main.xml

代码如下:
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools" android:id="@+id/activity_login"    android:layout_width="match_parent" android:layout_height="match_parent"    android:paddingBottom="10dip"    android:paddingLeft="10dip"    android:paddingRight="10dip"    android:paddingTop="10dip"    android:background="#DCDCDC"    android:orientation="vertical"    >    <LinearLayout        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:orientation="horizontal"        android:padding="10dp"        android:layout_marginBottom="10dp"        android:background="#ffffff"        >        <ImageView            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:src="@drawable/user"/>        <EditText            android:layout_width="0dp"            android:layout_height="wrap_content"            android:layout_weight="1"            android:background="@null"            android:layout_marginLeft="5dp"            android:hint="请输入帐号"            android:inputType="text"/>    </LinearLayout>    <LinearLayout        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:orientation="horizontal"        android:padding="10dp"        android:layout_marginBottom="10dp"        android:background="#ffffff">        <ImageView            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:src="@drawable/pwd"/>        <EditText            android:id="@+id/password"            android:layout_width="0dp"            android:layout_height="wrap_content"            android:layout_weight="1"            android:background="@null"            android:layout_marginLeft="5dp"            android:hint="请输入密码"            android:inputType="textPassword"/>        <ToggleButton            android:id="@+id/pwd_visible"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:background="@drawable/password_visible"            android:text="@null"            android:textOn="@null"            android:textOff="@null"            android:minWidth="@null"            android:minHeight="@null"/>    </LinearLayout>    <Button        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:background="#ffffff"        android:textColor="#000000"        android:textSize="18sp"        android:layout_marginBottom="8dp"        android:text="登录"/>    <LinearLayout        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:gravity="center_vertical"        android:orientation="horizontal">        <CheckBox            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:text="记住登录状态" />        <View            android:layout_width="0dp"            android:layout_height="16dp"            android:layout_weight="1"></View>        <TextView            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:text="忘记密码" />        <View            android:layout_width="1dp"            android:layout_height="16dp"            android:layout_marginLeft="8dp"            android:layout_marginRight="8dp"            android:background="#dd5320b0"></View>        <TextView            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:text="立即注册" />    </LinearLayout>    <View        android:layout_width="match_parent"        android:layout_height="0dp"        android:layout_weight="1"></View></LinearLayout>
4、创建password_visible.xml


代码如下:
<?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android">    <item android:state_checked="true" android:drawable="@drawable/pwd_visible"></item>    <item android:state_checked="false" android:drawable="@drawable/pwd_invisible"></item></selector>
注意:两张图片
pwd_visible.png\
pwd_invisible.png
分别是密码可见、密码不可见的小眼睛图片。

5、MainActivity


代码如下:

package ghy.test.com.test_ghy;        import android.support.v7.app.AppCompatActivity;        import android.os.Bundle;        import android.text.method.HideReturnsTransformationMethod;        import android.text.method.PasswordTransformationMethod;        import android.widget.CompoundButton;        import android.widget.EditText;        import android.widget.ToggleButton;public class MainActivity extends AppCompatActivity {    private EditText Password;    private ToggleButton pwd_visible;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        this.Password = (EditText) findViewById(R.id.password);        this.pwd_visible = (ToggleButton) findViewById(R.id.pwd_visible);        this.pwd_visible.setOnCheckedChangeListener(new ToggleButtonClick());    }    private class ToggleButtonClick implements CompoundButton.OnCheckedChangeListener{        @Override        public void onCheckedChanged(CompoundButton compoundButton, boolean isChecked) {            if (isChecked){                Password.setTransformationMethod(HideReturnsTransformationMethod.getInstance());            }else {                Password.setTransformationMethod(PasswordTransformationMethod.getInstance());            }            Password.setSelection(Password.length());        }    }}



阅读全文
0 0
原创粉丝点击