有没有办法让Linkify
'链接在我的Activity
中调用方法,或者我只允许使用Linkify
创建指向其他活动/应用等的链接。 ?
答案 0 :(得分:2)
你也可以放弃使用linkify,只需使用linkify的正则表达就可以将可点击的跨度附加到你想要的地方。这些可点击的跨度可以调用您的代码。
答案 1 :(得分:2)
听起来你已经解决了几个问题。缺少的部分似乎是在前台接收Intent的现有Activity。你可以通过在Manifest(android:launchMode="singleTop"
)中声明Activity为singleTop来实现。
因此工作流程如下:
1)通过addLinks将文本链接到你的正则表达式,Linkify.Matcher和Linkify.TransformFilter
2)设置接收器以捕获由点击链接启动的Intent。
3)在关联的BroadcastReceiver的onReceive中,设置一个Intent来封装你的链接被点击的事实。然后在Activity上调用startActivity(已经在前台),传递Intent。
4)在Activity的onResume回调中,检查Intent以查看是否应该调用该函数。
答案 2 :(得分:0)
您可以设置一个侦听特定方案的接收器,当您点击链接时,会调用一些以该方案开头的网址。
查看this答案了解详情。
答案 3 :(得分:-2)