3

我想在 textview 上显示超链接,但不在 url 上,例如:嗨,“url”如何。(这里的 url 将打开 www.google.com)。所有这些都将出现在警报对话框中。

我遵循了以下方法,但没有得到正确的解决方案..

String.xml---
<a href=http://www.google.co.in>谷歌</a>

        String str = getResources().getString(R.string.link);
        final TextView txtvw = new TextView(this);
        txtvw.setText(Html.fromHtml(str));
        txtvw.setClickable(true);
        txtvw.setAutoLinkMask(RESULT_OK);
        txtvw.setMovementMethod(LinkMovementMethod.getInstance());
        Linkify.addLinks(txtvw, Linkify.WEB_URLS);

        AlertDialog.Builder alt_bld = new AlertDialog.Builder(context);
        alt_bld.setTitle(title);

        alt_bld.setCancelable(false);

        alt_bld.create();
        alt_bld.setView(txtvw).show();
4

2 回答 2

1

使用 CDATA 标签:

<string name="link"><![CDATA[ <a href="http://www.google.co.in">Google</a> ]]></string>

更新:

String str = getResources().getString(R.string.link);
final TextView txtvw = new TextView(this);
txtvw.setText(Html.fromHtml(str));
txtvw.setMovementMethod(LinkMovementMethod.getInstance());

new AlertDialog.Builder(context)
                .setTitle(title)
                .setCancelable(false)
                .setView(txtvw)
                .show();
于 2013-01-08T10:50:06.317 回答
0

我不知道。但这可能是因为您错过了 href 上的双引号,

试试这个格式,

<a href="http://www.google.co.in">Google</a>
于 2013-01-08T10:46:25.520 回答