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

来源:互联网 发布:做什么网络兼职赚钱 编辑:程序博客网 时间:2024/06/03 08:12

问题

当我们想用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