カスタム描画可能(リソースから)を、TextViewのスパン、特にClickSpanに設定する方法はありますか?Android - カスタム描画可能な背景を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(...
これは動作しません。スパンを見えないようにするだけです。どんな明るいアイデアですか?
あなたのspan_background.xmlファイルはどのように見えますか?シェイプドローブを作成して同様のことを試しましたが、スパンは不可視として表示されます。なぜなら、形状ドロアブルは、ボタンのようなビューの背景に設定する必要があるからですか? http://stackoverflow.com/questions/6674657/how-change-button-shape-using-xml-or-using-java-code – toobsco42
私はここで何かsimiliarをやっていますhttp://stackoverflow.com/questions/10812316/ contact-bubble-edittext – toobsco42
ここで私はそれをうまく説明しました。あなたは私の[回答]を見ることができます(http://krishnalalstha.wordpress.com/2012/06/07/making-gosmsproevernote-like-edittext/) –