Android Html.fromHtml(String)过时的替代方法

版权声明:本文为wildma原创文章,转载请注明出处! https://blog.csdn.net/Alpha58/article/details/73144432

问题

当我们想用TextView来显示一段html代码时,则会用到Html.fromHtml(String)
但是现在这个方法是过时的。

解决

使用API Level 23或之前的设备可以用过时的方法,API Level 24或以上的设备则使用2个参数的方法即可。
fromHtml(String source, int flags)
即:

        TextView tv_text = (TextView) findViewById(R.id.tv_text);
        CharSequence charSequence;
        String content = "<p>简介:</p><p>1.nickname:wildma!</p><p>2.职业:android攻城狮</p>";
        if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.N) {
            charSequence = Html.fromHtml(content,Html.FROM_HTML_MODE_LEGACY);
        } else {
            charSequence = Html.fromHtml(content);
        }
        tv_text.setText(charSequence);

其中的flags表示:
FROM_HTML_MODE_COMPACT:html块元素之间使用一个换行符分隔
FROM_HTML_MODE_LEGACY:html块元素之间使用两个换行符分隔

参考:https://stackoverflow.com/questions/37899856/html-fromhtml-is-deprecated-what-is-the-alternative

猜你喜欢

转载自blog.csdn.net/Alpha58/article/details/73144432