html中的标签在xml中被识别为什么,在strings.xml中定义html标签
搜索熱詞
在項(xiàng)目的開發(fā)過程中,需要用到把html內(nèi)容放到strings.xml文件中,然后再讀取到TextView中.原本以為像普通文本一樣直接SetText就行了,結(jié)果行不通,大大超出我的預(yù)料.經(jīng)過網(wǎng)上搜索,找到一些方法,自己經(jīng)過整理,在此記錄下來,另附上自己的測試工程.
先貼上strings.xml文件中重點(diǎn)內(nèi)容:
Hello world!
link
Hello world!
link
]]>
方法一:普通html string 加上Context的getText
這方法能處理html中和xml共有的標(biāo)簽,但無法正確解析像"
"這種xml所沒有的標(biāo)簽.容易造成某些標(biāo)簽被忽略,實(shí)際上是用xml標(biāo)簽實(shí)現(xiàn)html標(biāo)簽的效果,且只能用Context的getText獲取帶有格式的html文本,如果用Context的getString獲取,html文本的格式標(biāo)簽會被自動過濾掉.此方法不需要用到Html類.部分代碼如下:
TextView view1 = (TextView)findViewById(R.id.textView1);
TextView view2 = (TextView)findViewById(R.id.textView2);
TextView view3 = (TextView)findViewById(R.id.textView3);
TextView view4 = (TextView)findViewById(R.id.textView4);
TextView view5 = (TextView)findViewById(R.id.textView5);
TextView view6 = (TextView)findViewById(R.id.textView6);
TextView view7 = (TextView)findViewById(R.id.textView7);
TextView view8 = (TextView)findViewById(R.id.textView8);
view1.setText(getString(R.string.msg1));
view2.setText(getText(R.string.msg1));
view3.setText(Html.fromHtml(getString(R.string.msg1)));
view4.setText(Html.fromHtml(getText(R.string.msg1).toString()));
方法二:特殊處理的html string 加上Context的getString(或者getText).
這個方法需要對strings.xml文件中對應(yīng)的string進(jìn)行處理,在html內(nèi)容最前面加上"
view5.setText(getString(R.string.msg2));
view6.setText(getText(R.string.msg2));
view7.setText(Html.fromHtml(getString(R.string.msg2)));
view8.setText(Html.fromHtml(getText(R.string.msg2).toString()));
效果圖如下:
總結(jié)
如果覺得編程之家網(wǎng)站內(nèi)容還不錯,歡迎將編程之家網(wǎng)站推薦給程序員好友。
本圖文內(nèi)容來源于網(wǎng)友網(wǎng)絡(luò)收集整理提供,作為學(xué)習(xí)參考使用,版權(quán)屬于原作者。
總結(jié)
以上是生活随笔為你收集整理的html中的标签在xml中被识别为什么,在strings.xml中定义html标签的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 华为升级鸿蒙体验,华为鸿蒙 Harmon
- 下一篇: frontpage中html编辑,Fro