如何在Android中对Google Maps API的标记进行去饱和处理

时间:2015-08-24 05:06:04

标签: android google-maps

我正在查看以下video on YouTube。它显示了一个简短的样本代码来对标记进行去饱和处理,但是没有提到如何将它与标记结合起来。

ColorMatrix desatMatrix = new ColorMatrix();
desatMatrix.setSaturation (restaurantRating);
ColorFilter paintColorFilter = new ColorMatrixcolorFilter(desatMatrix);

Paint paint = new Paint();
paint.setColorFilter(paintColorFilter);

Canvas canvas = new Canvas (newImage);
canvas.drawBitmap(oldImage, 0,0, paint);

问题是我现在如何将上面的代码添加到我的标记创建方法中?

视频说“将过滤器应用于标记图像”,但我不知道这意味着什么。

private MarkeOptions ceateStartMarkerOptions (Location location, String title, String snippet){

    return new MarkerOptions().position(location)
                    .icon(BitmapDescriptorFactor.fromResource(R.drawable.ic_my_marker_icon)
                    .title(title)
                    .snippet(snippet);
}

我使用

将标记直接添加到GoogleMap mMap中
currentMarker = mMap.addMarker(createStartMarkerOptions (location, "",""));

1 个答案:

答案 0 :(得分:1)

假设newImage是您想要所有绘图的位图 您可以将它传递给MarkerOptions,如下所示:

map.addMarker(new MarkerOptions().icon(BitmapDescriptorFactory.fromBitmap(newImage)));