目前,我正在开发一款使用Google Maps API在用户拍照的地图上绘制点的应用。这些图像是从我创建的数据库中存储和检索的。当地图首次启动时,我检索图片并绘制点。从数据库中获取byte []后,我将其转换为位图并将标记图标设置为DescriptorFactory中的位图。但是,编译器会抛出有关提供的图像必须如何为位图的错误。我99%肯定是。
private void plotMarkers(GoogleMap mMap) {
ImageHelper imageHelper = new ImageHelper(this, null, null, 1);
markers = imageHelper.selectAll();
if(markers.size() > 0)
{
int index = 0;
for (MyMarker myMarker : markers)
{
Bitmap bitmap = (imageHelper.getImage(index));
MarkerOptions markerOption = new MarkerOptions()
.position(new LatLng(myMarker.getLatitude(), myMarker.getLongitude()))
.icon(BitmapDescriptorFactory.fromBitmap(bitmap));
Marker currentMarker = mMap.addMarker(markerOption);
markersHashMap.put(currentMarker, myMarker);
index++;
}
}
}
答案 0 :(得分:1)
尝试使用Bitmap.createBitmap(bitmap)
另外请在下次指定全局变量的类型。