Android GoogleMap v2自定义InfoWindow大小

时间:2014-04-01 23:34:46

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

我正在测试提供自定义内容InfoWindowAdapter的{​​{1}}。我尝试过简单地返回View以及为特定大小的布局进行充气。然而,显示的InfoWindow呈现(看起来大小相同)一个巨大的显示,比默认的InfoWindow大小大得多。我正在new View(Context)中返回null,在getInfoWindow(Marker)中返回我想要的内容View

1 个答案:

答案 0 :(得分:7)

我解决了这个问题:

  googleMap.setInfoWindowAdapter(new GoogleMap.InfoWindowAdapter() {

  @Override
  public View getInfoWindow(Marker marker) {

    return null;
  }

  @Override
  public View getInfoContents(Marker marker) {

    // Inflate custom layout
    View v = getLayoutInflater().inflate(R.layout.marker_view, null);

    // Set desired height and width
    v.setLayoutParams(new RelativeLayout.LayoutParams(500, RelativeLayout.LayoutParams.WRAP_CONTENT));

    TextView id = (TextView) v.findViewById(R.id.marker_id);
    TextView alt = (TextView) v.findViewById(R.id.marker_altitude);
    TextView name = (TextView) v.findViewById(R.id.marker_name);

    id.setText("Marker ID");
    name.setText("Marker Name");
    alt.setText("Marker Altitude");

    return v;
  }
});
}
祝你好运。