引言
在项目开发中你肯定会遇到这样的需求,输入到EditText中的数据一个一个清理太麻烦了,需要有一个按钮直接能实现一次删除整个EditText控件中的数据,那么接下来我就给大家封装一个方法,有这样的需求直接调用就好了。话不多说,直接上代码:
/**
*清空编辑框按钮
* @param editText 需要清空的EditText控件
* @param delImageView 清空数据的图片
*/
protected void clearEditText(final EditText editText,final ImageView delImageView) {
/文本框编辑的监听/
editText.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence arg0,int arg1,int arg2,int arg3) {
// TODO Auto-generated method stub
}
@Override
public void beforeTextChanged(CharSequence arg0,int arg3) {
// TODO Auto-generated method stub
}
@Override
public void afterTextChanged(Editable arg0) {
// TODO Auto-generated method stub
if(editText.getText().length()!=0){
delImageView.setVisibility(View.VISIBLE);
} else {
delImageView.setVisibility(View.INVISIBLE);
}
}
});
/**焦点变化监听**/
editText.setOnFocusChangeListener(new View.OnFocusChangeListener() {
@Override
public void onFocusChange(View arg0,boolean arg1) {
// TODO Auto-generated method stub
if(editText.getText().length()!=0){
//删除图标显示
delImageView.setVisibility(View.VISIBLE);
} else {
//删除图标隐藏
delImageView.setVisibility(View.INVISIBLE);
}
if(arg1){
//得到焦点
} else {
//失去焦点,删除图标隐藏
delImageView.setVisibility(View.INVISIBLE);
}
}
});
//删除图标的点击监听事件
delImageView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
// 执行清空EditText数据
editText.setText("");
}
});
}
结束,接下来根据需求在需要的地方进行调用就好。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程小技巧。
总结
如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
小编个人微信号 jb51ccc
喜欢与人分享编程技术与工作经验,欢迎加入编程之家官方交流群!