问题描述
我想在多行TextView的末尾添加一个可点击的ImageView,类似于下面的示例:
Text text text text text text text
text text text. | Image |
我能够使用添加到TextView的ImageSpan和ClickableSpan来实现此目的, 但是它无法返回确切的可点击位置。我想在ImageView上准确显示工具提示指示器。下图应如下所示。 如果TextView中的文本有多行,我们必须在ImageView上显示工具提示指示器。
解决方法
尝试此方法:
首先将可绘制的右侧图像添加到Textview:
然后覆盖onTouch函数:
@Override
public boolean onTouch(View view,MotionEvent event) {
final int DRAWABLE_LEFT = 0;
final int DRAWABLE_TOP = 1;
final int DRAWABLE_RIGHT = 2;
final int DRAWABLE_BOTTOM = 3;
if(event.getAction() == MotionEvent.ACTION_UP) {
if(event.getRawX() >= (textview.getRight() - textview.getCompoundDrawables()[DRAWABLE_RIGHT].getBounds().width())) {
// your click action here
return true;
}
}
return false;
}