我想知道,有没有人知道如何在文本视图中获得与Android中的Linkify匹配的地址,并使其成为一个可点击的链接?
我想我可以手动解决这个问题,但我想知道我是否必须将地址与某个模式匹配,这样它就可以做到这一点,而不必为Linkify做这件事了?
我见过其他有关这方面的问题,但这些问题大多已经过时,而且从来没有得到真正的解决。
你能给我指出正确的方向吗?
下面,您可以看到我是如何在经度、纬度和地址本身的情况下手动完成此操作的。
mLocation.mImage.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent callIntent = new Intent(Intent.ACTION_VIEW);
//callIntent.setData(Uri.parse("google.navigation:q=" + establishment.getStreet() + "+" + establishment.getHousenumber() + "+" + establishment.getPostalcode() + "+" + establishment.getCity()));
callIntent.setData(Uri.parse("geo:" + establishment.getLongitude() + ", " + establishment.getLatitude()));
startActivity(callIntent);
}
});
提前谢谢。
发布于 2014-07-11 01:28:52
如果你看这里:
r1/android/webkit/WebView.java#WebView.findAddress%28java.lang.String%29
您将看到,目前只有美国地址支持Linkify。
获取由物理位置的地址组成的第一个子字符串。目前,只在美国发现地址,包括:
所有名称必须正确大写,如果有邮政编码,则必须对状态有效。街道类型必须是标准的USPS拼写或缩写。州或地区也必须拼写或缩写使用USPS标准。房屋号码不得超过五位数。
参数:添加字符串以搜索地址
返回:地址,如果找不到地址,则为null
希望这能帮到想办法解决同样问题的人。
我想唯一能做的就是建立你自己的地址匹配器。
发布于 2014-07-08 05:19:34
也许这能帮到你:http://www.aviyehuda.com/blog/2011/01/27/android-creating-links-using-linkfy/
TextView myLocation = new TextView(this);
myLocation.setText("436 Mayfield Ave, Stanford, CA");
Linkify.addLinks(myLocation , Linkify.MAP_ADDRESSES);
mainLayout.addView(myLocation);
https://stackoverflow.com/questions/24632597
复制