(リソースからの) カスタム ドローアブルを TextView のスパン、特に ClickSpan に設定する方法はありますか?
Google はスパンの 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(...
これは動作しません。スパンを非表示にするのに役立ちます。明るいアイデアはありますか?