在 Google 地图标记中添加 link (Android)
Add link in Google Maps marker (Android)
我目前正在我的项目中实现地图。地图用标记显示用户周围的某些地方。
标记应(除其他事项外)向该地点的网站提供 link,点击后会打开该网站。
显然,URL 形成的字符串不会自动转换为 link。我试图通过使用自定义 InfoWindow 来解决这个问题,但是 OnClickListener 没有触发。
以下是 InfoWindowAdapter 的构造函数代码:
MyInfoWindowAdapter(final Context context) {
this.context = context;
v = LayoutInflater.from(context).inflate(R.layout.info_window,
null);
final TextView tvWebsite = (TextView) v.findViewById(R.id.tvMapWebsite);
tvWebsite.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(tvWebsite.getText().toString()));
context.startActivity(browserIntent);
Log.d("MAP CLICK", "Clicked ");
}
});
编辑:之前的答案是错误的,问题的解决方案可以在:中找到,如评论中所见
我目前正在我的项目中实现地图。地图用标记显示用户周围的某些地方。
标记应(除其他事项外)向该地点的网站提供 link,点击后会打开该网站。
显然,URL 形成的字符串不会自动转换为 link。我试图通过使用自定义 InfoWindow 来解决这个问题,但是 OnClickListener 没有触发。
以下是 InfoWindowAdapter 的构造函数代码:
MyInfoWindowAdapter(final Context context) {
this.context = context;
v = LayoutInflater.from(context).inflate(R.layout.info_window,
null);
final TextView tvWebsite = (TextView) v.findViewById(R.id.tvMapWebsite);
tvWebsite.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(tvWebsite.getText().toString()));
context.startActivity(browserIntent);
Log.d("MAP CLICK", "Clicked ");
}
});
编辑:之前的答案是错误的,问题的解决方案可以在: