我有一个Android应用程序从RSS获取信息(纯HTML形式,包括p标签和href标签)。
以下是创建alertdialog的代码:
Builder alertDialog=new AlertDialog.Builder(Activity.this);
alertDialog.setMessage(Html.fromHtml(rss.getDesc()));
alertDialog.setNegativeButton("אישור", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
dialog.cancel();
}
});
alertDialog.show();
现在,正如我已经提到的,rss.getDesc()
- 方法带来了完整的HTML代码。
正如你所看到的,我已设法处理html,但超链接不起作用...... 这是html的一个例子:(忽略语言)
<p dir="rtl" align="right">כידוע לכם, עומר וייסבלום זכה בתחרות "המורה של המדינה" ובימים אלו מסייר בבתי ספר בארה"ב במשלחת ישראלית שיצאה במסגרת הזכייה.</p>
<p dir="rtl" align="right"> מצ"ב לינק לכתבה על עומר בעיתון בי"ס תיכון אמריקאי באזור וושינגטון בארה"ב (Walt Whitman High School).</p>
<p><a href="http://www.blich.co.il/node/16346">הצג את ההמשך</a></p>
如果你能告诉我我错过了什么,我会很高兴的。
答案 0 :(得分:1)
为此目的,有Linkify
-class。正如文档所读:
Linkify采取一段文字和一个正则表达式并将其全部转换 正则表达式在文本中匹配为可单击的链接。 [...]
由于您要在对话框中启用链接,因此您需要为文字使用Spannable
并将其传递给Linkify
s addLinks()
-method。
可在此处找到示例(和类似问题):How can I get clickable hyperlinks in AlertDialog from a string resource?