我是ClickableSpan的子類來自定義TextView中鏈接的文本樣式。TextView按下狀態的ClickableSpan樣式
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);
}
}
我想在按下狀態或用戶觸摸鏈接時更改樣式。 (像在css a:hover
),但我不能找出一種方式來獲取updateDrawState
當前狀態。
有什麼辦法可以解決這個問題嗎?如果我無法更改文本樣式,我希望至少能夠更改背景顏色。
編輯爲指向的評論,你可以找到在Change the text color of a single ClickableSpan when pressed without affecting other ClickableSpans in the same TextView
您是否找到答案?你怎麼最終這樣做? – Ravi
對於這可能有助於未來的人,請看看這個http://stackoverflow.com/a/20905824/1646326 –