首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Android Google Map v2 -单击标记infoWindow时启动活动

Android Google Map v2 -单击标记infoWindow时启动活动
EN

Stack Overflow用户
提问于 2013-05-22 03:26:15
回答 2查看 28.6K关注 0票数 18

我已经看到人们在这项特定的任务中发现了很多困难,我也需要帮助。

我已经成功地使用谷歌提供的默认代码在地图上创建了标记。但是现在我希望能够点击"InfoWindow“来打开一个新的活动,这样我就可以添加更多的信息。

使用标题和代码片段

  • From这个基本标记:

单击http://mobisys.in/blog/wp-content/uploads/2013/04/Screenshot_2013-04-04-17-19-581.png

  • Then并打开一个空白活动:

http://tuts-authors.s3.amazonaws.com/mobile.tutsplus.com/Shane%20Conder%20and%20Lauren%20Darcey/2012/09/25/Android-Creating-Hello-Worlds_Emulator-basic-hello-world.png

有人知道做这件事的最好方法吗?

如果你能回答这个,请提供一些代码或例子。任何帮助都将不胜感激!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-05-22 03:37:02

将此代码添加到您的代码中

代码语言:javascript
复制
 Mymap.setOnInfoWindowClickListener(new OnInfoWindowClickListener() {
            @Override
            public void onInfoWindowClick(Marker marker) {
               Intent intent = new Intent(MapActivity.this,OtherActivity.class);
               startActivity(intent);


            }
        });
票数 55
EN

Stack Overflow用户

发布于 2017-07-11 19:23:12

代码语言:javascript
复制
This method works even well with multiple markers. get the title of the marker using marker.getTitle() and Starts the activity based on which marker you clicked. 

public void onMapReady(GoogleMap googleMap) {
        mMap = googleMap;
        // Add a marker in Sydney and move the camera
        LatLng chennai = new LatLng(12.9671, 80.2593);
        mMap.addMarker(new MarkerOptions().position(chennai).title("Chennai"));

        LatLng perungudi = new LatLng(12.97, 80.25);
        mMap.addMarker(new MarkerOptions().position(perungudi).title("Perungudi"));

        LatLng pallikarnai = new LatLng(12.9377, 80.2154);
        mMap.addMarker(new MarkerOptions().position(pallikarnai).title("Pallikarnai"));

        mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(chennai,12));
        mMap.setOnMarkerClickListener(new GoogleMap.OnMarkerClickListener() {
            @Override
            public boolean onMarkerClick(Marker marker) {
                if (marker.getTitle().equals("Chennai")){
                    Toast.makeText(MapsActivity.this, "Clicked"+marker.getTitle(), Toast.LENGTH_SHORT).show();
                }
                return false;
            }
        });

    }
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16677929

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档