Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/227.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在谷歌地图标记(Android)中添加链接_Android_Google Maps_Url_Onclicklistener - Fatal编程技术网

在谷歌地图标记(Android)中添加链接

在谷歌地图标记(Android)中添加链接,android,google-maps,url,onclicklistener,Android,Google Maps,Url,Onclicklistener,我目前正在我的项目中实现一个映射。地图用标记显示用户周围的某些地方 标记应提供(除其他外)指向该地点网站的链接,单击该链接可打开该网站 显然,URL格式的字符串不会自动转换为链接。我试图通过使用自定义InfoWindow来解决这个问题,但OnClickListener不会触发 以下是InfoWindowAdapter构造函数的代码: MyInfoWindowAdapter(final Context context) { this.context = context; v =

我目前正在我的项目中实现一个映射。地图用标记显示用户周围的某些地方

标记应提供(除其他外)指向该地点网站的链接,单击该链接可打开该网站

显然,URL格式的字符串不会自动转换为链接。我试图通过使用自定义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 ");
        }
    });

编辑:前面的答案是错误的,问题的解决方案可以在:,如评论中所示

首先,谢谢:)我已经阅读了其他问题和解决方案。该链接现在显示为链接(蓝色+下划线),但不可单击。顺便说一句,我使用的是完整地址,不是“点击这里”之类的。但是,它不会对单击做出反应。
setMovementMethod
android:linksClickable
都没有帮助。可能是标记物阻止了吗?嗯,好的。试试这个解决方案,它似乎与你的问题更相关:所以,我基本上是像你的第二个解决方案那样做的。但是,这会导致整个InfoWindow触发事件。如果我只有网站链接就可以了,但我也有电话号码。我的OnClick创建一个对话框,用户必须在其中选择操作。这可能不是最理想的解决方案,但至少是有效的。再次感谢:“JuliCangron”,因为这个答案是基于一个评论被接受的,并且当前答案中的内容是错误的,考虑编辑你的答案包含正确的解决方案。