15

ClickableSpanをサブクラス化して、TextView内のリンクのテキストスタイルをカスタマイズしています。

private static class LinkSpan extends ClickableSpan {
    @Override
    public void onClick(View widget) {
         // code...
    }

    @Override
    public void updateDrawState(TextPaint ds) {
        super.updateDrawState(ds);
        ds.setUnderlineText(false);
        ds.setTypeface(Typeface.create(ds.getTypeface(), Typeface.BOLD));
        ds.setColor(0xff336699);
    }
}

押された状態、またはユーザーがリンクに触れたときにスタイルを変更したい。(a:hovercssのように)しかし、現在の状態をで取得する方法がわかりませんupdateDrawState

これを処理する方法はありますか?テキストのスタイルを変更できない場合は、少なくとも背景色を変更できるようにしたいと思います。

コメントで示されているように編集すると、同じTextView内の他のClickableSpansに影響を与えずに、押したときに1つのClickableSpanのテキストの色を変更するで答えを見つけることができます。

4

1 に答える 1

9

私がした背景色を変更するために

testTextView.setHighlightColor(Color.BLUE);

TextView で。

しかし、テキストの色を変更する機会があれば、私にとっては良いでしょう.

于 2012-09-11T08:42:48.817 に答える