我有簡單的HTML : html
<h2>Title</h2><br> <p>description here</p>
我想在TextView
顯示HTML樣式的文本。 這該怎麼作? 服務器
看看這個: https : //stackoverflow.com/a/8558249/450148 佈局
這也很不錯!! ui
<resource> <string name="your_string">This is an <u>underline</u> text demo for TextView.</string> </resources>
它僅適用於少數標籤。 spa
簡單地使用Html.fromHtml("html string")
。 這會奏效。 若是字符串有像<h1>
這樣的標籤,則會出現空格。 但咱們沒法消除這些空間。 若是您仍想刪除空格,則能夠刪除字符串中的標記,而後將字符串傳遞給方法Html.fromHtml("html string");
。 一般這些字符串來自服務器(動態)但不常常,若是最好將字符串傳遞給方法,而不是嘗試從字符串中刪除標記。 code
如下代碼爲我提供了最好的結果。 htm
TextView myTextview = (TextView) findViewById(R.id.my_text_view); htmltext = <your html (markup) character>; Spanned sp = Html.fromHtml(htmltext); myTextview.setText(sp);
您須要使用Html.fromHtml()
在XML字符串中使用HTML。 簡單地在佈局XML中引用帶有HTML的String將不起做用。 ip
這是你應該作的: 字符串
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) { textView.setText(Html.fromHtml("<h2>Title</h2><br><p>Description here</p>", Html.FROM_HTML_MODE_COMPACT)); } else { textView.setText(Html.fromHtml("<h2>Title</h2><br><p>Description here</p>")); }
String value = "<html> <a href=\"http://example.com/\">example.com</a> </html>"; SiteLink= (TextView) findViewById(R.id.textViewSite); SiteLink.setText(Html.fromHtml(value)); SiteLink.setMovementMethod(LinkMovementMethod.getInstance());