2017-02-22 11 views
0

これは文字列のWebサービスから取得したものです。Androidアプリがhtmlタグを非常によくレンダリングしない

<p><strong>This is instructor's reply to the guest's MDB message</strong></p> 

これは、私はそれがビュー

String Reply = parent.getString(TAG_ReplyMessage); 
TextView ReplyTextView= (TextView) findViewById(R.id.reply_txt); 
ReplyTextView.setText(Html.fromHtml(Reply)); 

をテキストに設定しています方法ですが、このアプリは<p><strong>タグで情報を表示します。それはこれらのタグをレンダリングする必要があるのに対し

enter image description here

、それはhtmlのだ表示しません。

ご協力いただければ幸いです。

答えて

2
それはあなたに役立つかもしれない

私も私のプロジェクトで同じ問題を得ていたし、それはあなたを助けることme.mayため、これが働いた:

String Reply = parent.getString(TAG_ReplyMessage); 
TextView ReplyTextView= (TextView) findViewById(R.id.reply_txt); 
String htmltext=Html.fromHtml(Reply).toString(); 
ReplyTextView.setText(Html.fromHtml(htmltext)); 
+0

ありがとう、それは私のために働く。 – Anjum

0

<![CDATA[...]]>strings.xmlの間にこれらのタグを直接書き込むことができます。

例:Javaでは

<string name="type"><![CDATA[Type:<B> %s</B>]]></string> 

textView.setText(Html.fromHtml(getString(R.string.type, "Sports"))); 

出力:

タイプ:スポーツ

更新:

文字列自体が似ている場合:次に

String data = "&lt;p&gt;&lt;strong&gt;This is instructor&amp;#39;s reply to the guest&amp;#39;s MDB message&lt;/strong&gt;&lt;/p&gt;"; 

、あなたは以下のように試すことができます:

textView.setText(Html.fromHtml(Html.fromHtml(data).toString())); 
+0

さて、私はWebサービスからその文字列を取得しています。なぜ私はstrings.xmlに追加する必要があります – Anjum

+0

@Anjum更新された答えをお試しください。 –

0

Androidは、すべてのHTMLタグをサポートしていません。

これ

は、たとえ少し古いですが、サポートされているHTMLタグのリスト:
http://www.grokkingandroid.com/android-quick-tip-formatting-text-with-html-fromhtml/

それとも、ソースに目を通すと、サポートされているか見ることができる:
http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/5.1.1_r1/android/text/Html.java#Html

これらのリストによると、 、<p>はサポートされていません。だから、<p></p>の中の何かを解析することはできません。

0

&amp;#39;amp;部分を削除します。 '単一引用符のHTMLコードは、ちょうど&#39;ある

関連する問題