【问题标题】:Android Make hyperlinks in textview clickableAndroid使textview中的超链接可点击
【发布时间】:2012-03-13 14:54:36
【问题描述】:

我正在从服务器获取一些 HTML 并在 Textview 中显示。 HTML 有一些超链接。我希望当用户单击某个超链接时,它会在设备浏览器中打开该链接的 url,但它不起作用。我已阅读有关 Linkify 并使用以下内容:

TextView articleDescription = (TextView)findViewById(R.id.articledescription);
articleDescription.setText(Html.fromHtml(articleInfo.getArticle_body()));
Linkify.addLinks(articleDescription, Linkify.WEB_URLS);

但它也不起作用。有什么想法...???

对不起,实际上我最近注意到超链接是相对于服务器的,所以我认为这就是没有触发浏览器意图的原因。我有示例 HTML 文本:

<p><span style="font-family: Helvetica,sans-serif;"><span style="font-size: small;">Since I began reporting for It&rsquo;s Relevant in June, I have come across some amazing people living and working in Stamford. Over the past 6 months, I have had the opportunity to share their stories and report on issues affecting the city. Here are some of my favorite pieces from     2011:</span></span></p> <p><br /><a href="/content/7298/Bakers_Keep_Up_With_The_Kardashians_?ref=qmf10j"><span style="color: #000080;"><span style="font-family: Helvetica,sans-serif;"><span style="font-size: small;">Bakers Keep up with the Kardashians</span></span></span></a></p> <p><span style="font-family: Helvetica,sans-serif;"><span style="font-size: small;">This story combines two of my favorite things, the Kardashian sister&rsquo;s and cake! Deb and Dina are so talented and it was great to see them at work. </span></span></p> <p><br /><a href="www.itsrelevant.com/content/7508/Yankees_GM_Set_To_Jump_Off_Building?ref=qmf10j"><span style="color: #000080;"><span style="font-family: Helvetica,sans-serif;"><span style="font-size: small;">Yankees GM Set to Jump Off Building</span></span></span></a></p> <p><span style="font-family: Helvetica,sans-serif;"><span style="font-size: small;">Never in my life did I think I would interview the General Manager of the Yankees, let alone on the rooftop of a 22-story building!</span></span></p> <p><a href="/content/6782/Fashion_Show_Features_Cancer_Survivors?ref=0yk17d"><br /><span style="color: #000080;"><span style="font-family: Helvetica,sans-serif;"><span style="font-size: small;">Breast Cancer Fashion Show</span></span></span><span style="color: #000000;"><span style="font-family: Helvetica,sans-serif;"><span style="font-size: small;"> </span></span></span></a></p> <p><span style="font-family: Helvetica,sans-serif;"><span style="font-size: small;">These women are truly amazing! So many people are affected by cancer and the Paint the Town Pink committee spent October bringing awareness to the disease. </span></span></p> <p><br /><a href="/content/5275/Downed_Trees_Remain_Problem?ref=qmf10j"><span style="color: #0000ff;"><span style="font-family: Helvetica,sans-serif;"><span style="font-size: small;">Downed Trees Remain Problem </span></span></span></a></p> 

现在有什么建议可以做什么这样的数据吗?或者某种正则表达式,以便我可以将相对路径替换为服务器绝对路径?

【问题讨论】:

    标签: android hyperlink textview linkify


    【解决方案1】:

    看看这个。它可能很有帮助..

      TextView tv=new TextView(this);
        tv.setLayoutParams(lparams);
        webview =new WebView(this);
        webview.setLayoutParams(lparams);
        tv.setText(Html.fromHtml("<a href='http://www.google.com'>www.google.com</a>"));
        tv.setClickable(true);
        tv.setMovementMethod(LinkMovementMethod.getInstance());
        URLSpan[] urlSpans = tv.getUrls();
        for ( URLSpan urlSpan : urlSpans )  
        {  
            webview.loadUrl( urlSpan.getURL() ); 
        }  
    

    看看这个链接。 http://www.indelible.org/ink/android-linkify/

    【讨论】:

      【解决方案2】:

      尝试这样做:

      TextView articleDescription = (TextView)findViewById(R.id.articledescription);
      articleDescription.setMovementMethod(LinkMovementMethod.getInstance());
      articleDescription.setText(Html.fromHtml(articleInfo.getArticle_body()));
      

      【讨论】:

        【解决方案3】:

        这个怎么样,

        TextView t2 = (TextView) findViewById(R.id.*example*);
        t2.setMovementMethod(LinkMovementMethod.getInstance());
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2016-04-07
          • 2015-04-27
          • 2014-01-21
          • 1970-01-01
          • 2011-02-13
          相关资源
          最近更新 更多