如何在谷歌地图android中点击标记时显示文本

时间:2013-10-10 09:27:13

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

我想这样显示。

https://lh6.ggpht.com/DOvS0NiHGyGC9Vn7JvkwznRBZ7I65j3zwpNAqLkP5y083ju7JQbwWi4NAXQLp5Wsavmn=h900 当谷歌地图标记被点击时,文本将显示在下面。它可以上下拖动。我不明白它是如何完成的。

public class MapsActivity extends FragmentActivity
{
Googlemap gm;

gm = ((SupportMapFragment) (getSupportFragmentManager()
            .findFragmentById(R.id.map))).getMap();
gm.setMapType(GoogleMap.MAP_TYPE_NORMAL);
gm.setOnInfoWindowClickListener(this);
@Override
public void onInfoWindowClick(Marker marker) {
    String a=marker.getTitle();
   // how to display this title in same screen below with dragging up and down when map marker been tap

}
    }

请帮我解决这个问题。谢谢。

3 个答案:

答案 0 :(得分:1)

实现此方法而不是infoWindowClick

gm.setOnMarkerClickListener(new OnMarkerClickListener() {

    @Override
    public boolean onMarkerClick(Marker arg0) {
    // TODO Auto-generated method stub
            String title = "Any Thing You want";
                marker.setTitle(title);
                textView.setText("title");
        return true;
    }
});

答案 1 :(得分:0)

您必须为其创建隐藏布局。根据需要创建一个布局,默认情况下为GONE。但是当你点击下面的那个并在你的onClick方法中膨胀那个布局时:

    gm.setOnInfoWindowClickListener(this);
    @Override
    public void onInfoWindowClick(Marker marker) {
        String a=marker.getTitle();
        LayoutInflater inflater;
        inflater = LayoutInflater.from(context);
        View view;
        view = adapterInflater.inflate(R.layout.adapter_add_event, null);
       // how to display this title in same screen below with dragging up and down when map marker been tap

}

并且可见这个布局,执行findViewById并使其可见。

答案 2 :(得分:0)

或..如果您的标记是可拖动的,请使用以下代码段

        map.setOnMarkerDragListener(new GoogleMap.OnMarkerDragListener() {

        @Override
        public void onMarkerDragEnd(Marker marker) {
            marker.setSnippet("Your Text");
            map.animateCamera(CameraUpdateFactory.newLatLng(marker.getPosition()));

        }

    });