有没有办法将自定义的可绘制资源(从资源中获取)设置到TextView的span上,特别是ClickSpan?
Google返回了许多关于通过覆盖span的updateDrawState()方法来禁用高亮或更改颜色等的答案,但我没有看到如何将绘制的内容设置为背景。
我在DynamicDrawableSpan中看到了可能性,但我无法使其与ClickableSpan一起工作。这是我的代码:
这并不起作用,它只是帮助使span不可见。有什么好的想法吗?
Google返回了许多关于通过覆盖span的updateDrawState()方法来禁用高亮或更改颜色等的答案,但我没有看到如何将绘制的内容设置为背景。
我在DynamicDrawableSpan中看到了可能性,但我无法使其与ClickableSpan一起工作。这是我的代码:
public class MyDynamicDrawableSpan extends DynamicDrawableSpan
{
private Context c;
public MyDynamicDrawableSpan(Context context) {
super();
c = context;
}
@Override
public Drawable getDrawable() {
Resources res = c.getResources();
Drawable d = res.getDrawable(R.drawable.span_background);
return d;
}
这是我如何使用它:
}
SpannableStringBuilder ssb = new SpannableStringBuilder(text);
MyDynamicDrawableSpan ddSpan = new MyDynamicDrawableSpan(getApplicationContext());
...
ssb.setSpan(ddSpan, start, end, 0);
ssb.setSpan(new ClickableSpan(...
这并不起作用,它只是帮助使span不可见。有什么好的想法吗?