HTML字符串不在textview中呈现

时间:2017-09-25 12:35:15

标签: android html textview

我有像这样的json数据

{
"user_id": "27",
"notification": "<a>There is package wiating for you to pick from <font style="color: blue;"> #Surat</font> to <font style = "color: blue;"> #Adajan, Surat, Gujarat, India</font> </a>",
},
{
"user_id": "27",
"notification": "<a>There is package wiating for you to pick from <font style="color: blue;"> #majuraget, surat</font> to <font style = "color: blue;"> #pal, surat</font> </a>",
},
{
"user_id": "27",
"notification": "<a>There is package wiating for you to pick from <font style="color: blue;"> #majuraget, surat</font> to <font style = "color: blue;"> #pal, surat</font> </a>",
},
{
"user_id": "27",
"notification": "<a>There is package wiating for you to pick from <font style="color: blue;"> #majuraget, surat</font> to <font style = "color: blue;"> #pal, surat</font> </a>",
}

我在Textview中呈现此通知字符串,但它无效。

这是我试过的

Spanned value = null;
        if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.N) {

            value = Html.fromHtml(notifications.getTitle(), Html.FROM_HTML_MODE_COMPACT);
            holder.txtTitle.setMovementMethod(LinkMovementMethod.getInstance());
            holder.txtTitle.setText(value);

        }else {
            value = Html.fromHtml(notifications.getTitle());
            holder.txtTitle.setMovementMethod(LinkMovementMethod.getInstance());
            holder.txtTitle.setText(value);     
        }

我也试过这个library

Spanned fromHtml = HtmlCompat.fromHtml(context, notifications.getTitle(), 0);
        holder.txtTitle.setMovementMethod(LinkMovementMethod.getInstance());
        holder.txtTitle.setText(fromHtml);

但这些都不起作用。

这是我得到的输出:

enter image description here

这就是我所期待的

enter image description here

1 个答案:

答案 0 :(得分:1)

尝试修改通知字符串,如下所示:

{
"user_id": "27",
"notification": "<a>There is package wiating for you to pick from <font color='blue'> #majuraget, surat</font> to <font color='blue'> #pal, surat</font> </a>"
}