gpt4 book ai didi

java - 在 TextView 中将字符串的一部分设为粗体

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:22:09 25 4
gpt4 key购买 nike

为什么下面的代码不起作用?它在 Toast 中有效,但在 TextView 中无效。 boldName 在我运行我的程序时没有显示为粗体,但当我将它设置为 Toast 时它确实显示为粗体。有没有人有任何其他解决方案?

String boldName = "<b>" + name + "</b>";
Spanned conBold = Html.fromHtml(boldName);
chosen_contact.setText("You have chosen " + conBold + " as your contact.");

最佳答案

老实说,我不确定为什么 TextViews 的行为方式与您可以像现在一样将其全部设置为粗体,但前提是整个 TextView 都是粗体,但如果只有一部分是粗体,则不能并且那里还有其他字符串。

但是,此代码适用于您:

// a SpannableStringBuilder containing text to display
SpannableStringBuilder sb = new SpannableStringBuilder("You have chosen " + name + " as your contact.");

// create a bold StyleSpan to be used on the SpannableStringBuilder
StyleSpan b = new StyleSpan(android.graphics.Typeface.BOLD); // Span to make text bold

// set only the name part of the SpannableStringBuilder to be bold --> 16, 16 + name.length()
sb.setSpan(b, 16, 16 + name.length(), Spannable.SPAN_INCLUSIVE_INCLUSIVE); // make first 4 characters Bold

chosen_contact.setText(sb); // set the TextView to be the SpannableStringBuilder

关于java - 在 TextView 中将字符串的一部分设为粗体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20850822/

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