【问题标题】:How can i get information from a selected marker? (Android)如何从选定的标记中获取信息? (安卓)
【发布时间】:2017-09-19 15:40:38
【问题描述】:

我有一个使用谷歌地图和地图上放置一些标记的活动。另外,我有一些 TextViews 显示地图上第一个选定标记的信息。

我希望能够从我的地图中选择的任何标记访问信息。当我单击另一个标记时,我希望我的 Textviews 中的信息发生变化。你能告诉我我应该调用什么方法或者我应该怎么做才能做到这一点?

谢谢。

【问题讨论】:

    标签: android google-maps google-maps-markers


    【解决方案1】:

    查看docs

    要获取标记标题和标记 sn-p 检查这些链接

    如下添加标记

    myMarker = getMap().addMarker(new MarkerOptions()
                        .position(latLng)
                        .title("My Spot")
                        .snippet("This is my spot!"));
    

    然后,使用getTitle()getSnippet() 设置TextView,如下所示

    tv.setText(myMarker.getTitle());
    

    tv.setText(myMarker.getSnippet());
    

    要在每次单击标记时更改TextView 的文本,使用onClickListener() 检测点击。可能是这样的。。

    map.setOnMarkerClickListener(new OnMarkerClickListener()
    {   
         @Override
         public boolean onMarkerClick(Marker arg0) {
               if(marker.isInfoWindowShown()) {
                    marker.hideInfoWindow();
               } else {
                    marker.showInfoWindow();
               }
               tv.setText(myMarker.getTitle());    //Change TextView text here like this
               return true;
          }
    }); 
    

    【讨论】:

    • 谢谢!但是当我单击标记时,我想在我的文本视图中更改信息。我发现了这个问题:stackoverflow.com/questions/14312936/… 它帮助了我,但我希望在我选择标记时改变信息,而不是信息窗口。我能做到吗?
    • 非常感谢兄弟! +代表。
    • 很高兴它有帮助.. :) 快乐编码.. :)
    • 如果我可以问另一个问题。现在我已经覆盖了“onMarkerClick”,InfoWindow 不再显示。我怎样才能让它再次出现?我应该在覆盖的方法中添加什么?
    • 又工作了!非常感谢队友,祝福像你这样乐于助人的人!
    猜你喜欢
    • 1970-01-01
    • 2011-11-23
    • 1970-01-01
    • 2014-01-09
    • 2011-10-13
    • 1970-01-01
    • 2019-08-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多