【问题标题】:TextView ClickableSpan styling for pressed state [duplicate]按下状态的TextView ClickableSpan样式[重复]
【发布时间】: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找到答案

【问题讨论】:

标签: android textview


【解决方案1】:

为了改变背景颜色我做了

testTextView.setHighlightColor(Color.BLUE);

在 TextView 上。

但是有机会改变文本颜色对我来说会更好。

【讨论】:

  • 这不是我问的,但我接受了这个答案,因为它是唯一的答案。真正的解决方案是stackoverflow.com/a/20905824/1646326
  • 下次不要害羞地在实际答案中发布链接并将其标记为正确。它将通过使答案更明显来帮助其他人。
  • 这解决了我的问题,谢谢! :)
  • @dasony 如果这不是答案,那么将其标记为没有意义。我想如果您不想发布自己的链接答案,编辑您的问题以将人们指向该链接会更有帮助。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-09-10
  • 1970-01-01
  • 2014-01-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多