介绍
这期内容当中小编将会给大家带来有关怎么在Android中实现一个带清除按钮,密码可见的输入框,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
我的这个自带清除,小眼睛的控件,是一个自定义控件,控件名称ClearEditText.class,继承RelativeLayout并有布局引用。在拷贝到项目里面后,使用时候只需要与普通输入框控件一样,进行相关的配置即可,部分属性需要使用自定义属性,具体见代码。
二、使用步骤
, 1。拷贝ClearEditText.class
拷贝ClearEditText。类类到自己的项目里,再考拷贝它相关的布局文件,自定义属性,默认图片即可,下面贴出ClearEditText主要代码:
public class ClearEditText extends RelativeLayout { ,private ImageView  ivLeftIcon; ,private EditText  myEdie; ,private ImageView  ivEditClean; ,private ImageView  ivEditEye; ,private boolean isChecked =,真的; ,private Context  mContext; ,private TypedArray  mTypedArray; ,private boolean showClean =,真的,//清空图标是否显示,真的:显示 ,private boolean showEye =,假;//密码可见图标是否显示,真的:显示 ,private int drawableLeft =, 1;//是否显示输入框左侧图片 ,private int drawableEyeOpen =, R.drawable.clear_icon_eye_open;//可以看见密码小眼睛样式 ,private int drawableEyeClose =, R.drawable.clear_icon_eye_close;//不可见密码小眼睛样式 ,private int drawableClean =, R.drawable.clear_icon_close;//清除按钮图片 ,private int cleanPadding =, 0;//清除按钮填充边距 ,private String  hintStr; ,private String  textStr; ,private int mTextColorHint =, Color.BLACK; ,private int mTextColor =, Color.BLACK; ,private int mTextSize =, 1; ,private int mMaxLength =, 2000; ,private int mMaxLines =, 1; ,private int mInputType =, 0;//输入类型,就做了不限制,数字,文本密码三种 ,private boolean isInput =,假;//输入1个字符后更改状态为真的,保证小眼睛移动一次 ,private boolean isHideClean =,假;//输入字符后,清除了需要小眼睛归为,清除按钮隐藏 ,private int ivWidth =, 45;//关闭按钮的宽度 ,public ClearEditText (Context 上下文),{ 超级才能(上下文);=mContext 才能;环境; initView才能(); ,} ,public ClearEditText (Context 上下文,AttributeSet attrs,, int defStyle), { 超级才能(上下文,attrs,, defStyle);=mContext 才能;环境; 时间=mTypedArray 才能;mContext.obtainStyledAttributes (R.styleable.myEditText attrs也); initView才能(); ,} ,public ClearEditText (Context 上下文,AttributeSet attrs), { 超级才能(上下文,attrs);=mContext 才能;环境; 时间=mTypedArray 才能;mContext.obtainStyledAttributes (R.styleable.myEditText attrs也); 时间=showClean 才能;mTypedArray.getBoolean (showClean R.styleable.myEditText_showClean也); 时间=drawableClean 才能;mTypedArray.getResourceId (drawableClean R.styleable.myEditText_drawableClean也); 时间=cleanPadding 才能;mTypedArray.getDimensionPixelSize (cleanPadding R.styleable.myEditText_cleanPadding也); 时间=showEye 才能;mTypedArray.getBoolean (showEye R.styleable.myEditText_showEye也); 时间=drawableLeft 才能;mTypedArray.getResourceId (R.styleable.myEditText_drawableLeft, 1); 时间=drawableEyeClose 才能;mTypedArray.getResourceId (drawableEyeClose R.styleable.myEditText_drawableEyeClose也); 时间=drawableEyeOpen 才能;mTypedArray.getResourceId (drawableEyeOpen R.styleable.myEditText_drawableEyeOpen也); 时间=hintStr 才能;mTypedArray.getString (R.styleable.myEditText_hint); 时间=textStr 才能;mTypedArray.getString (R.styleable.myEditText_text); 时间=mTextColorHint 才能;mTypedArray.getColor (mTextColorHint R.styleable.myEditText_textColorHint也); 时间=mTextColor 才能;mTypedArray.getColor (mTextColor R.styleable.myEditText_textColor也); 时间=mTextSize 才能;mTypedArray.getDimensionPixelSize (mTextSize R.styleable.myEditText_textSize也); 时间=mMaxLength 才能;mTypedArray.getInteger (mMaxLength R.styleable.myEditText_maxLength也); 时间=mMaxLines 才能;mTypedArray.getDimensionPixelSize (mMaxLines R.styleable.myEditText_maxLines也); 时间=mInputType 才能;mTypedArray.getInteger (mInputType R.styleable.myEditText_inputType也); mTypedArray.recycle才能(); initView才能(); ,} ,//初始化视图 ,private void  initView (), { View 才能;View =, View.inflate (getContext ()), R.layout.clear_layout_view,, null); ivLeftIcon 才能=,(ImageView), view.findViewById (R.id.iv_edit_left_icon); myEdie 才能=,(EditText), view.findViewById (R.id.view_edit_show); null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null怎么在Android中实现一个带清除按钮,密码可见的输入框