Google 地图标记 showinfowindow 自定义 Android
Google map marker showinfowWindow customize Android
在我的应用程序中,我必须在位置显示有关标记的信息。
这是我的工作代码。
mPerth = mMap.addMarker(new MarkerOptions()
.position(PERTH)
.title("Perth")
.snippet("Population: Perth")
.icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_ORANGE)));
mPerth.showInfoWindow();
这看起来像这样的图片:
我想要看起来像这样的图像:
如果你有什么方法,请投票给我。
试试这个。
marker.setInfoWindowAnchor(1f,1f)
编辑:
对于自定义信息窗口,您必须具体实施 GoogleMap.InfoWindowAdapter 并膨胀您的 custom_info_window_layout.xml getInfoWindow(Marker marker) 方法中的文件。
public class CustomInfoWindowAdapter implements GoogleMap.InfoWindowAdapter {
Activity context;
CustomInfoWindow(Activity context){
this.context =context;
}
@Override
public View getInfoWindow(Marker marker) {
View view = context.getLayoutInflater().inflate(R.layout.custom_info_window_layout, null);
TextView title =(TextView) view.findViewById(R.id.tv_title);
TextView snippet =(TextView) view.findViewById(R.id.tv_snippet);
title.setText(marker.getTitle());
snippet.setText(marker.getSnippet());
return view;
}
@Override
public View getInfoContents(Marker marker) {
return null;
}
}
最后在地图上设置这个 CustomInfoWindowAdapter。
map.setInfoWindowAdapter(new CustomInfoWindowAdapter(MainActivity.this))
static final LatLng PERTH = new LatLng(-31.90, 115.86);
Marker marker = mMap.addMarker(new MarkerOptions()
.position(PERTH)
.anchor(0.5,0.5)
.rotation(90.0)
.infoWindowAnchor(0.5,0)); // add this line
指定标记图像中显示信息时锚定信息 window 的点。默认为图像的顶部中间。
在我的应用程序中,我必须在位置显示有关标记的信息。 这是我的工作代码。
mPerth = mMap.addMarker(new MarkerOptions()
.position(PERTH)
.title("Perth")
.snippet("Population: Perth")
.icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_ORANGE)));
mPerth.showInfoWindow();
这看起来像这样的图片:
我想要看起来像这样的图像:
试试这个。
marker.setInfoWindowAnchor(1f,1f)
编辑:
对于自定义信息窗口,您必须具体实施 GoogleMap.InfoWindowAdapter 并膨胀您的 custom_info_window_layout.xml getInfoWindow(Marker marker) 方法中的文件。
public class CustomInfoWindowAdapter implements GoogleMap.InfoWindowAdapter {
Activity context;
CustomInfoWindow(Activity context){
this.context =context;
}
@Override
public View getInfoWindow(Marker marker) {
View view = context.getLayoutInflater().inflate(R.layout.custom_info_window_layout, null);
TextView title =(TextView) view.findViewById(R.id.tv_title);
TextView snippet =(TextView) view.findViewById(R.id.tv_snippet);
title.setText(marker.getTitle());
snippet.setText(marker.getSnippet());
return view;
}
@Override
public View getInfoContents(Marker marker) {
return null;
}
}
最后在地图上设置这个 CustomInfoWindowAdapter。
map.setInfoWindowAdapter(new CustomInfoWindowAdapter(MainActivity.this))
static final LatLng PERTH = new LatLng(-31.90, 115.86);
Marker marker = mMap.addMarker(new MarkerOptions()
.position(PERTH)
.anchor(0.5,0.5)
.rotation(90.0)
.infoWindowAnchor(0.5,0)); // add this line
指定标记图像中显示信息时锚定信息 window 的点。默认为图像的顶部中间。