界面:
界面根据自己的情况编写,此处只做参考:
<LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@drawable/login_edit_bg_selector" android:layout_marginLeft="60dp" android:layout_marginRight="60dp" android:layout_marginTop="@dimen/px10" android:orientation="horizontal"> <EditText android:id="@+id/login_password"android:layout_width="match_parent" android:layout_height="wrap_content"android:layout_weight="1"
android:paddingLeft="@dimen/px10"
android:paddingTop="@dimen/px10"
android:paddingBottom="@dimen/px10"
android:singleLine="true"
android:textColor="@color/text_first_color"
android:textCursorDrawable="@null"
android:background="@null"
android:inputType="textPassword"/>
<ImageView
android:id="@+id/show_password"
android:layout_width="@dimen/px25"
android:layout_height="@dimen/px20"
android:background="@drawable/cjiao"
android:layout_margin="@dimen/px5"
android:layout_gravity="center_vertical"/>
</LinearLayout>
代码:
初始化控件之后
//显示明文密码 show_password.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub if (!mbDisplayFlg) { et_password.setTransformationMethod(HideReturnsTransformationMethod.getInstance()); show_password.setBackgroundResource(R.drawable.gzhu); } else { et_password.setTransformationMethod(PasswordTransformationMethod.getInstance()); show_password.setBackgroundResource(R.drawable.cjiao); } mbDisplayFlg = !mbDisplayFlg; et_password.postInvalidate(); //切换后将EditText光标置于末尾 CharSequence charSequence = et_password.getText(); if (charSequence instanceof Spannable) { Spannable spanText = (Spannable) charSequence; Selection.setSelection(spanText, charSequence.length()); } } });