【发布时间】:2012-05-04 09:19:46
【问题描述】:
我正在继承 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);
}
}
我想在它处于按下状态或用户触摸链接时更改样式。 (就像 css 中的 a:hover 一样)但我想不出一种方法来获取 updateDrawState 中的当前状态。
有什么办法可以解决这个问题吗?如果我不能改变文字样式,我希望至少能够改变背景颜色。
EDIT正如评论所指出的,您可以在Change the text color of a single ClickableSpan when pressed without affecting other ClickableSpans in the same TextView找到答案
【问题讨论】:
-
你找到答案了吗?你是怎么做到的?
-
对于将来可能会有所帮助的人,请查看stackoverflow.com/a/20905824/1646326