AlertDialog里面的超级链接

时间:2011-11-10 22:56:09

标签: java android html rss android-alertdialog

我有一个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">כידוע לכם, עומר וייסבלום זכה בתחרות &quot;המורה של המדינה&quot; ובימים אלו מסייר בבתי ספר בארה&quot;ב במשלחת ישראלית שיצאה במסגרת הזכייה.</p>
<p dir="rtl" align="right"> מצ&quot;ב לינק לכתבה על עומר בעיתון בי&quot;ס תיכון אמריקאי באזור וושינגטון בארה&quot;ב (Walt Whitman High School).</p>
<p><a href="http://www.blich.co.il/node/16346">הצג את ההמשך</a></p>

如果你能告诉我我错过了什么,我会很高兴的。

1 个答案:

答案 0 :(得分:1)

为此目的,有Linkify-class。正如文档所读:

  

Linkify采取一段文字和一个正则表达式并将其全部转换   正则表达式在文本中匹配为可单击的链接。 [...]

由于您要在对话框中启用链接,因此您需要为文字使用Spannable并将其传递给Linkify s addLinks()-method

可在此处找到示例(和类似问题):How can I get clickable hyperlinks in AlertDialog from a string resource?