autoLink表示地图不起作用

时间:2010-04-12 19:08:23

标签: android android-widget

我的XML布局文件中有以下TextView: -

<TextView  
   android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:text="@string/autolink_test"
       android:autoLink="all"
/>

字符串autolink_test包含电话号码,电子邮件地址,网站地址和实际地理位置。

虽然前三个正确显示为可点击的自动链接,但地址却没有。只有邮政编码部分显示为自动链接......这也是电话号码! (当我点击它时,电话拨号器会以该号码启动。)

任何帮助都将不胜感激。

2 个答案:

答案 0 :(得分:12)

替代它,以防自动链接不起作用

添加指向texview的链接。下面列举如下:

SpannableString spanStr = new SpannableString(buf.toString());
spanStr.setSpan(new UnderlineSpan(), 0, spanStr.length(), 0);
iTextView.setText(spanStr);

使用以下代码点击地图应用程序打开它,如下所示:

Intent geoIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("geo:0,0?q="
                                +iTextView.getText().toString()));
startActivity(geoIntent);

答案 1 :(得分:10)

好的,我弄明白是什么导致了这个问题。我想我会在这里留下答案,以防其他人遇到同样的问题。

如果街道地址没有正确大写,则无法正确读取地址!

这是我的XML autolink_test字符串:

<string name="autolink_test">Name: New York Times \n
   Email: public@nytimes.com \n
   Phone: 212-556-7652 \n
   Address: 620 Eighth Avenue New York, NY 10018  \n
   Address: 620 Eighth avenue New York, NY 10018  \n
   Website: http://www.nytimes.com
</string>

第一个地址正确显示为自动链接。 第二个('avenue'中有一个小'a')没有正确显示。

这对我来说有点奇怪,因为谷歌地图网站肯定不关心这样的细节。

无论如何,所以这里是: - )