【发布时间】:2016-05-01 06:23:17
【问题描述】:
我已将我的对象保存到名为 Memories 的 HashMap 中,当我单击它时,我想提取 BitMap 和 Title 等并将其设置为 Markers InfoWindow。我有显示图像和标题等的信息窗口,但是当我添加另一个标记并创建另一个记忆对象时。两个标记都显示最新数据。
@Override
public void showMemory(final Memory memory) {
Toast.makeText(getApplicationContext(), "The Minions have saved your Memory!", Toast.LENGTH_SHORT).show();
mMap.addMarker(new MarkerOptions().title(memory.getTitleMem()).position(memory.getLocationMem()));
mMap.setInfoWindowAdapter(new GoogleMap.InfoWindowAdapter() {
@Override
public View getInfoWindow(Marker marker) {
return null;
}
@Override
public View getInfoContents(Marker marker) {
markers.put(marker.getId(), memory);
View view = getLayoutInflater().inflate(R.layout.marker_layout, null);
ImageView markerImage = (ImageView)view.findViewById(R.id.markerImage);
TextView markerTitle = (TextView)view.findViewById(R.id.markerTitle);
TextView markerDate = (TextView)view.findViewById(R.id.markerDate);
if(markers != null && markers.size() > 0){
markerImage.setImageBitmap(markers.get(marker.getId()).getImageMem());
markerTitle.setText(markers.get(marker.getId()).getTitleMem());
markerDate.setText(markers.get(marker.getId()).getFormatedDate());
}
return view;
}
});
mMap.moveCamera(CameraUpdateFactory.newLatLng(memory.getLocationMem()));
}
这是我将我的对象保存到 HashMap 并显示标记内容的地方。我是否保存并在标记中显示错误的数据?
【问题讨论】:
标签: java android google-maps google-maps-markers