ListView中的动态链接文本 - 错误:找不到数据的意图:指定的URL

时间:2011-09-21 15:18:46

标签: android listview linkify

我正在制作列表视图。 在该列表中,每个项目都有文本视图。 在文本视图中,我根据来自网络服务的数据定义链接文字

现在,当我点击链接文字时,我得到错误,如

09-21 20:27:38.031: ERROR/AndroidRuntime(766): android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.VIEW dat=\"ticbeat.com/socialmedia/fa…" (has extras) 

请帮我解决这个问题.. 任何解决方案的答案都将受到高度赞赏。

更新

代码:

if(urlentities[position]!=null && dpurlentities[position]!=null)
            holder.twtdata.setText(Html.fromHtml(timelines[position].replace(urlentities[position],"<a href=\\\""+dpurlentities[position]+"\">"+urlentities[position]+"</a>")));

2 个答案:

答案 0 :(得分:8)

看起来您需要将http://放在该网址的开头。如果没有协议说明符,Android似乎假设“content://”是预期的URL类型。

答案 1 :(得分:0)

默认情况下,Linkify会打开默认浏览器(新活动)。我猜你将getBaseContext()作为上下文传递给TextView(Context context)。您必须将活动作为Context传递给默认情况下才能工作。如果您担心内存泄漏,可以尝试getApplicationContext()但尚未对其进行测试。

处理这种情况的最佳方法是在跨越onclick()的TextView上创建一个侦听器。您的活动(创建textView()的活动捕获该监听器,然后活动打开浏览器。Here您可以看到如何创建自己的监听器

另一种方法是在你的布局中实现一个WebView,你需要做的就是显示带有链接点击的webView。 getBaseContext()可以做到这一点。