以上是我想要使用 String.xml 实现的图像
有三件事
- '76' & '20' 将使用 String.format 动态替换
- '20' 应该是粗体
- “20”的尺寸应该更大
我已经尝试了所有使用 Html.fromHtml 类的解决方案。
以下是我尝试过的解决方案。我可以使“20”变粗,但不能使“20”变大。
以下是我尝试过的 String.xml 的不同变体
<string name="points_data">Use %1$d points= <font size="30">₹ %2$d</font> in payment</string>
<string name="points_data">Use %1$d points= <font size="14"><b>₹ %2$d</b></font> in payment</string>
<string name="points_data">Use %1$d points= <font size="14"><b>₹ %2$d</b></font> in payment</string>
<string name="points_data"><![CDATA[Use %1$d points= <font size="60"><b>₹ %2$d</b></font> in payment]]></string>
<string name="points_data">Use %1$d points= <b><span style="fontSize='50'">₹ %2$d</span></b> in payment</string>
以下是我用于解析上述字符串的方法
val formattedText = String.format(getString(R.string.points_data), 76, 20)
textViewPoints.text = HtmlCompat.fromHtml(formattedText, HtmlCompat.FROM_HTML_MODE_LEGACY)
我在谷歌搜索解决方案时遇到了以下链接,但它们都不适用于我的情况。
- https://developer.android.com/guide/topics/resources/string-resource
- 设置 TextView 样式(粗体或斜体)
- Android N 中不推荐使用 Html.fromHtml
我已经尝试了我能想到的所有可能的解决方案,但没有一个有效。我不知道我缺少什么来实现。如果有人知道如何实现此场景或知道实现此目的的方法,请提供一些相关指导。