gpt4 book ai didi

Android:如何在一个 TextView 中组合文本和图标

转载 作者:行者123 更新时间:2023-12-04 23:54:57 26 4
gpt4 key购买 nike

您好,我可以按任意顺序将普通文本与粗体文本和图像组合在一起吗? enter image description here

谢谢!

最佳答案

一种方法是使用 SpannableStringBuilder。要添加粗体文本,您可以这样做:

        val text = SpannableStringBuilder()
.append("В программе")
.append(" ")
.bold { append("Телефон") }

要添加图像,您可以使用这样的 hand cook 扩展(我只为 DrawableRes 为您编写):

    fun SpannableStringBuilder.drawable(
tv: TextView,
@DrawableRes drawable: Int,
): SpannableStringBuilder {
val icon = ContextCompat.getDrawable(tv.context, drawable)!!
icon.setBounds(0, 0, tv.lineHeight, tv.lineHeight)
return inSpans(ImageSpan(icon, DynamicDrawableSpan.ALIGN_BOTTOM)) { append("$drawable") }
}

因此,您的第一个带图像的字符串的最终代码将如下所示:

val text = SpannableStringBuilder()
.append("В программе")
.append(" ")
.bold { append("Телефон") }
.append(" ")
.drawable(binding.tv, R.drawable.telephone)
.append(" ")
.append("нажмите")
.append(" ")
.bold { append("недавние") }
.append(" ")
.drawable(binding.tv, R.drawable.clock)

binding.tv.text = text

关于Android:如何在一个 TextView 中组合文本和图标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66424760/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com