2017-02-22 9 views
0

Это то, что я получаю от веб-службы в строке.Android-приложение не отображает html-теги очень хорошо

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

Это, как я ставлю его в Text View

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.

Пример:

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

В Java:

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

Ну я Я получаю эту строку из веб-службы. почему мне нужно добавить его в 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;