自定义带有删除功能的edittext实例,在登录,搜索等地方经常用到可以直接用
来源:互联网 发布:战舰世界驱逐舰数据 编辑:程序博客网 时间:2024/05/16 09:30
package com.sunday.customs;import com.example.customs.R;import android.content.Context;import android.graphics.Rect;import android.graphics.drawable.Drawable;import android.text.Editable;import android.text.TextWatcher;import android.util.AttributeSet;import android.util.Log;import android.view.MotionEvent;import android.widget.EditText;/** * @author sunday * 2013-12-04 */public class EditTextWithDel extends EditText {private final static String TAG = "EditTextWithDel";private Drawable imgInable;private Drawable imgAble;private Context mContext;public EditTextWithDel(Context context) {super(context);mContext = context;init();}public EditTextWithDel(Context context, AttributeSet attrs, int defStyle) {super(context, attrs, defStyle);mContext = context;init();}public EditTextWithDel(Context context, AttributeSet attrs) {super(context, attrs);mContext = context;init();}private void init() {imgInable = mContext.getResources().getDrawable(R.drawable.delete_gray);imgAble = mContext.getResources().getDrawable(R.drawable.delete);addTextChangedListener(new TextWatcher() {@Overridepublic void onTextChanged(CharSequence s, int start, int before, int count) {}@Overridepublic void beforeTextChanged(CharSequence s, int start, int count, int after) {}@Overridepublic void afterTextChanged(Editable s) {setDrawable();}});setDrawable();}//设置删除图片private void setDrawable() {if(length() < 1)setCompoundDrawablesWithIntrinsicBounds(null, null, imgInable, null);elsesetCompoundDrawablesWithIntrinsicBounds(null, null, imgAble, null);} // 处理删除事件 @Override public boolean onTouchEvent(MotionEvent event) { if (imgAble != null && event.getAction() == MotionEvent.ACTION_UP) { int eventX = (int) event.getRawX(); int eventY = (int) event.getRawY(); Log.e(TAG, "eventX = " + eventX + "; eventY = " + eventY); Rect rect = new Rect(); getGlobalVisibleRect(rect); rect.left = rect.right - 50; if(rect.contains(eventX, eventY)) setText(""); } return super.onTouchEvent(event); } @Override protected void finalize() throws Throwable { super.finalize(); }}
package com.sunday.customs;import com.example.customs.R;import android.os.Bundle;import android.app.Activity;import android.view.Menu;public class MainActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.main, menu);return true;}}
0 0
- 自定义带有删除功能的edittext实例,在登录,搜索等地方经常用到可以直接用
- 自定义带有删除功能的edittext实例,在登录,搜索等地方经常用到可以直接用
- 自带删除功能的输入框——在登录,搜索等地方经常用到可以直接用
- 自定义带有删除功能的EditText
- 自定义的带有删除功能EditText
- 自定义EditText,带有搜索图片的EditText
- 自定义控件--带有删除按钮的EditText
- 自定义带有删除标签的edittext
- Android 实现自定义自带删除按钮的EditText(带有搜索接口)
- 自定义EditText—带有清除功能,在显示多行文本时清除按钮位于整个EditText的右下角
- Android自定义View带有删除按钮的EditText
- 自定义带删除功能的EditText
- 带有删除按钮的EditText
- 带有一键清空功能的EditText
- 带有一键清空功能的EditText
- Android-EditText(自定义带删除功能的EditText)
- Android-EditText 自定义带删除功能的EditText
- Android-EditText(自定义带删除功能的EditText)
- Hibernate总结(转载)
- Java中的static与final关键字的作用
- [MFC]如何让窗口全屏
- UILable缩进、行间距设置、边框
- test
- 自定义带有删除功能的edittext实例,在登录,搜索等地方经常用到可以直接用
- 详细记录python的range()函数用法
- Mybatis一个对象关联两个对象(多对一)
- leetcode_234. Palindrome Linked List 判断单链表是否为回文串,快慢指针法找中间节点,反转单链表
- iOS切图拉伸
- [dp][NOIP2005]过河
- Anroid TextureView、SurfaceView的Camera预览实现
- 在线画流程图的工具,processon
- 列表去重