android edittext drawable,android – 在事件上显示复合drawable到EditText
我解决了它……创建了以下代码
public class CustomEditText extends EditText {
private Drawable dRight;
private Rect rBounds;
CustomEditText(Context context,AttributeSet attributeSet){
super(context,attributeSet);
}
@Override
public void setCompoundDrawables(Drawable left,Drawable top,Drawable right,Drawable bottom) {
/*if (left != null) {
dLeft = left;
}*/
if (right != null) {
dRight = right;
}
super.setCompoundDrawables(left,top,right,bottom);
}
@Override
public void addTextChangedListener(TextWatcher watcher) {
super.addTextChangedListener(watcher);
}
@Override
protected void onTextChanged(CharSequence text,int start,int lengthBefore,int lengthAfter) {
super.onTextChanged(text,start,lengthBefore,lengthAfter);
if(this.getText().toString().length()>0)
this.setCompoundDrawablesWithIntrinsicBounds(null,dRight,null);
else
this.setCompoundDrawablesWithIntrinsicBounds(null,null);
}
@Override
protected void finalize() throws Throwable {
dRight = null;
rBounds = null;
super.finalize();
}
}
并添加到xml中:
android:id="@+id/uIDEditText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:drawableRight="@drawable/round_clear"
android:textColor="#ffffff" />
在Activity中(edittext ontouch侦听器):
uIDEditText.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v,MotionEvent event) {
if (event.getAction() != MotionEvent.ACTION_UP)
return false;
if (event.getX() > uIDEditText.getWidth() - clear.getIntrinsicWidth())
{
uIDEditText.setText("");
event.setAction(MotionEvent.ACTION_CANCEL);
}
return false;
}
});
android edittext drawable,android – 在事件上显示复合drawable到EditText相关推荐
- Android中使用Notification在状态栏上显示通知
场景 状态栏上显示通知效果 注: 博客: https://blog.csdn.net/badao_liumang_qizhi 关注公众号 霸道的程序猿 获取编程相关电子书.教程推送与免费下载. 实现 ...
- Android学习-使用WebView在app上显示网页
通过Intent调用系统浏览器 Uri uri = Uri.parse(url);//url为你要链接的地址 Intent intent = new Intent(Intent.ACTION_VIEW ...
- java复选框如何显示在文本雨_java – 在复选框的itemStatechanged事件上显示文本字段...
如何在Swing中的复选框的itemStatechanged事件中显示文本字段? 我正在尝试使用复选框和文本字段创建框架.我希望仅在选中复选框时才显示文本字段.因此,当我初始化组件时,我将textfi ...
- android 获取网络图片并在Imageview上显示
这个是我使用的图片...http://imgstore04.cdn.sogou.com/app/a/100520024/877e990117d6a7ebc68f46c5e76fc47a 布局中声明一个 ...
- android倒计时dialog,倒计时,dialog上显示倒计时,如果不点击dialog,倒计时结束后自动跳转...
首先在strings.xml文件里定义 // 整数用 %d 字符串用 %s "提示" "该视频已被移除" %d 返回播放列表 string > /*如果 ...
- android drawable 点击事件,Android中EditText的drawableRight属性设置点击事件
这个方法是通用的,不仅仅适用于edittext,也适用于textview.autocompletetextview等控件. google官方api并没有给出一个直接的方法用来设置右边图片的点击事件,所 ...
- android 调取数字键盘,如何在android中的EditText上显示数字键盘?
如何在android中的EditText上显示数字键盘? 我只是想在某个EditText具有焦点时立即切换到数字键盘模式. 13个解决方案 239 votes 您可以为EditText配置EditTe ...
- android用来显示界面的组件,Android 自学之基本界面组件(上)
文本款(TextView)和编辑框(EditText)的功能和用法 TextView直接继承了View,他还是EditText.Button两个UI组件的父类,TextView的作用就是在界面上显示文 ...
- 如何在Android上显示警报对话框?
我想显示一个对话框/弹出窗口,并向用户显示"您确定要删除此条目吗?"的消息. 一个带有"删除"按钮. 触摸Delete ,它应删除该条目,否则不删除任何条目. ...
最新文章
- Ubuntu 系统 启动报错 /: UNEXPECTED INCONSISTENCY; RUN FSCK MANUALLY
- 有序数组二分查找java_详解Java数据结构和算法(有序数组和二分查找)
- LeetCode Anagrams
- ubuntu将GNU nano换成vim
- laravel 定时任务
- 适用于ps的Raw格式图像插件:AdobeCamera Raw13 Mac中文版
- 100行代码撸完SpringIOC容器
- 拆分命令_命令行生存指南:拆分与合并 | Linux 中国
- 幕享 for Mac(全平台全设备投屏共享软件)中文版
- 16.卷1(套接字联网API)---非阻塞式IO
- hdu3790最短路径问题 (用优先队列实现的)
- 决策树C4.5算法的不足
- Matlab矢量图导出PDF格式方式及LaTex图片排版技巧
- 神经网络计算棒怎么用,微软神经网络计算棒
- 塑料齿轮模具设计指南
- Mac显示桌面的快捷方式
- 【安富莱】RTX嵌入式操作系统教程发布,支持F103,F407和F429,含81个配套例程(2017-10-17)...
- android 百度导航 过路费,高德地图和百度地图规划路线不一样,且过路费也有差别如何选择?...
- Linux 文件属性详解
- 林子雨—大数据技术原理与应用—上机实验二
热门文章
- 看病要排队 (hdu1873,优先队列)
- 基于Go语言构建区块链:part5
- 四、java多线程核心技术——synchronized同步方法与synchronized同步快
- java if语句练习
- 拦截器 参数不过去 的解决方法
- SSH 命令常见用法
- ubuntu16.04安装FastDFS-5.08
- Get value from agent failed:cannot connect to[[192.168.1.113];10050]:[111]Co
- 【Oracle】恢复重做日志组
- 【Oracle】RMAN备份