【问题标题】:How can I change some of statements' text style in Firebase?如何更改 Firebase 中某些语句的文本样式?
【发布时间】:2018-12-19 17:47:17
【问题描述】:

我正在尝试向 Firebase 的用户展示一些陈述。这些陈述中有标题和内容。尝试用风格大胆的帖子写标题。但是,我无法从 android studio 更改代码,因为我已将整个描述子项分配给单个 TextView。相反,我使用了诸如“\ n”之类的表达式,它也用于字符串表达式。可以写粗体标题吗?如果有怎么办?

例如;这是我的

我可以在这里用粗体写“ilk olarak bulunduğunuz Federal devletteki bir...”吗?

【问题讨论】:

  • 您想以粗体显示描述文本的某些部分吗?
  • 是的,我可以显示吗?

标签: android firebase styles parent-child


【解决方案1】:

是的,你可以显示,我使用的方法是从 firebase 设置 html

<p><b>This text is bold</b></p>

在安卓端

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
    tvDesc.setText(Html.fromHtml(strfromfirebase, Html.FROM_HTML_MODE_COMPACT));
} else { 
    tvDesc.setText(Html.fromHtml(strfromfirebase));
}

【讨论】:

    【解决方案2】:

    在这种情况下,您需要使用SpannableString

    例如,如果我想在“Hello World”中加粗“Hello”这个词,我会这样做:

    String word = "Hello World";
    
    SpannableString spannableString = new SpannableString(word);
    spannableString.setSpan(new StyleSpan(Typeface.BOLD),0,5,Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
    textView.setText(spannableString);
    

    0 是起始索引,5 是结束索引

    【讨论】:

    • 但是,你已经在 anroid studio 中初始化了字符串值。我不是那个意思。我的意思是有一个声明是firebase中的一个孩子。我想用粗体显示部分描述。这个描述真的很长的说法。有几个标题我需要大胆地展示风格。你已经向我展示了如果我在 android studio 中有一个字符串值,我可以更改它。
    • 您不能将带有样式的值存储在数据库中,而是可以用括号 (my word) 包装您想要样式的文本,并在检索数据时使用它来应用样式
    • 嗯,在 Java 语言中,我们可以使用 \n 符号或 \t 来跳过行或段落。我只是想知道是否可以写出风格大胆的帖子。要是真的加进去就不会太糟糕了:)
    • 我也面临同样的挑战,但是这在 Java 中仍然不可能,因此我建议您选择另一种方法来存储您想要加粗的项目,然后在检索它们时使用解决方案我提到。例如,您可以将它们括在括号或引号中,然后在检索它们时使用正则表达式过滤单词并应用您的样式:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-27
    • 2011-07-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多