【问题标题】:applying italic for item in string-array in a string xml对字符串 xml 中的字符串数组中的项目应用斜体
【发布时间】:2015-10-29 14:33:03
【问题描述】:

我有一个包含几个段落的字符串数组。一个单词包含斜体字体。我如何为特定的 word-textview 应用斜体字体。我知道我们可以使用 spannable 应用斜体。但还有其他方式吗?

<string-array name="string_collections" formatted="false">
<item>nutrients and weakens the <![CDATA[<i>Agni</i>]]>(digestive fire) within the stomach. Ayurveda recommends sipping minimal amounts during meals, with larger volumes spaced throughout the day, always away from food.
 \n</item>

它显示为文本。使用 Html.fromHtml 方法没有效果。

【问题讨论】:

    标签: android xml string textview italic


    【解决方案1】:

    试试这个:-

    试试 Html.fromHtml(),并用粗体和斜体 HTML 标签标记你的文本,例如:

    Spanned text = Html.fromHtml("This mixes <b>bold</b> and <i>italic</i> stuff");
    textView.setText(text);
    

    【讨论】:

    • 不。你弄错了。我想为某些特定的单词应用斜体。不是整个 textview 老兄。
    • 请检查我的答案!我对使用 html 不感兴趣,谢谢!
    【解决方案2】:

    我找到了一个更好的方法。只需使用 Matcher 并获取它的索引。

         java.util.regex.Pattern p =
                                        java.util.regex.Pattern.compile("(^|\\s)word\\b",
                                                java.util.regex.Pattern.CASE_INSENSITIVE);
                       final Matcher matcher = p.matcher(whole_text);
    
    
            final SpannableStringBuilder spannable = new SpannableStringBuilder(whole_text);
                                while (matcher.find()) {
                                    Log.e("Spannable", "Spannable" +"Matchfound");
                          //apply span which you want.
     spannable.setSpan(new StyleSpan(Typeface.ITALIC), matcher.start(), matcher.end(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
                                }
                                tvtextmsg.setText(spannable);
    

    注意:刚刚发现我在使用时遇到的另一个问题 如果您尝试按以下方式进行操作

     tvtextmsg.setText(spannable+"\n \n"+another_text);
    

    spannable 不会受到影响。你需要这样做

    tvtextmsg.setText(spannable);
    tvtextmsg.append("\n \n"+another_text)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-08
      • 1970-01-01
      • 1970-01-01
      • 2018-06-16
      • 2011-02-21
      相关资源
      最近更新 更多