我有一个EditText
设置drawables
在EditText
. 我正在drawables
用不同的场景切换它们。我有clearText
和refreshIcon
作为我的drawables。这两个都在正确更改,但我无法为我的两个drawables
. 这是我为清除文本所做的工作EditText
:
String value = "";
final Drawable x = getResources().getDrawable(R.drawable.clear_text);
x.setBounds(0, 0, x.getIntrinsicWidth(), x.getIntrinsicHeight());
getUrl.setCompoundDrawables(null, null, value.equals("") ? null : x,
null);
getUrl.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
if (getUrl.getCompoundDrawables()[2] == null) {
return false;
}
if (event.getAction() != MotionEvent.ACTION_UP) {
return false;
}
if (event.getX() > getUrl.getWidth() - getUrl.getPaddingRight()
- x.getIntrinsicWidth()) {
getUrl.setText("");
getUrl.setCompoundDrawables(null, null, null, null);
}
return false;
}
});
当我单击clearText
drawable
它时,它会清除文本。这很好很容易。
现在,我有另一个drawable
ie refreshIcon
,当 onEditText
refreshIcon
出现时,它没有为刷新目的获取特定事件。
clearText
我使用了与for相同的代码refreshIcon
。我无法打印Log
when refreshIcon
is clicked/touched
。
我在做什么?任何形式的帮助将不胜感激。