android:textColorHighlight=transparent 被忽略

Posted

技术标签:

【中文标题】android:textColorHighlight=transparent 被忽略【英文标题】:android:textColorHighlight=transparent is being ignored 【发布时间】:2015-04-02 12:47:02 【问题描述】:

我有 TextView。一些文本具有 ClickableSpan。 一旦文本被点击,它就会被突出显示。

当我将此行放入 TextView xml android:textColorHighlight="@color/red" 正如预期的那样,突出显示将是红色的。

问题是我不希望它被突出显示并且 android:textColorHighlight="@color/transparent" 不工作。

有什么想法吗? 谢谢

【问题讨论】:

试试android:background="#07000000" 或在你的课堂上setBackgroundColor(Color.TRANSPARENT); 你也可以添加一个Alpha android:alpha="0.2" 那个错误是什么? 反正我给了你一些想法,也许如果你遇到更多问题,你可以尝试一下。 解决方案是写在代码中:textview.setHighlightColor(Color.TRANSPARENT);原因是我有 ClickableSpan 所以我不得不写 textview.setMovementMethod(LinkMovementMethod.getInstance());它解决了所有的麻烦.. 谢谢大家 【参考方案1】:

试试android:background="#07000000"

在你的 java.class setBackgroundColor(Color.TRANSPARENT);

您也可以添加 Alpha android:alpha="0.2"

希望对你有帮助。

【讨论】:

【参考方案2】:

那是因为内部TextView.applyTextAppearance方法有如下代码:

    if (attributes.mTextColorHighlight != 0) 
        setHighlightColor(attributes.mTextColorHighlight);
    

我会说这是一个错误,因为这会使 #00000000 颜色无法使用,转换为 0。

要解决您的问题,您不应使用#00000000,而应使用其他全透明颜色,例如#00FFFFFF。

【讨论】:

【参考方案3】:

你可以试试:

android:textColorHighlight="@null" 

【讨论】:

【参考方案4】:

使用:

android:textColorHighlight="@android:color/transparent"

【讨论】:

以上是关于android:textColorHighlight=transparent 被忽略的主要内容,如果未能解决你的问题,请参考以下文章