diff --git a/app/src/main/java/com/gh/gamecenter/gamedetail/desc/DescAdapter.kt b/app/src/main/java/com/gh/gamecenter/gamedetail/desc/DescAdapter.kt index 91c61112d1..eab10e699e 100644 --- a/app/src/main/java/com/gh/gamecenter/gamedetail/desc/DescAdapter.kt +++ b/app/src/main/java/com/gh/gamecenter/gamedetail/desc/DescAdapter.kt @@ -983,14 +983,17 @@ class DescAdapter( setExpandMaxLines(maxDesLines) setIsExpanded(Int.MAX_VALUE == maxDesLines) if (customColumn.isHtmlDes == true) { + val decoratedDesBrief = (customColumn.desBrief ?: "").dropFontColorInDarkMode(contentTv.context) + val decoratedDes = (customColumn.des ?: "").dropFontColorInDarkMode(contentTv.context) + shrankSpanned = HtmlCompat.fromHtml( - customColumn.desBrief ?: "", + decoratedDesBrief, HtmlCompat.FROM_HTML_MODE_COMPACT, PicassoImageGetter(contentTv), ExtraTagHandler() ) expandedSpanned = HtmlCompat.fromHtml( - customColumn.des ?: "", + decoratedDes, HtmlCompat.FROM_HTML_MODE_COMPACT, PicassoImageGetter(contentTv), ExtraTagHandler() diff --git a/module_common/src/main/java/com/gh/gamecenter/common/utils/Extensions.kt b/module_common/src/main/java/com/gh/gamecenter/common/utils/Extensions.kt index f1faaaee55..6d778dd374 100644 --- a/module_common/src/main/java/com/gh/gamecenter/common/utils/Extensions.kt +++ b/module_common/src/main/java/com/gh/gamecenter/common/utils/Extensions.kt @@ -455,6 +455,17 @@ fun String.containHtmlTag(): Boolean { return matcher.find() } +fun String.dropFontColorInDarkMode(context: Context) : String { + return if (DarkModeUtils.isDarkModeOn(context)) { + val fontColorRegex = Pattern.compile("]*color[^>]*>") + val matcher = fontColorRegex.matcher(this) + + return matcher.replaceAll("") + } else { + this + } +} + /** * 用户行为相关 */