2015-08-03 65 views
0

我需要在Nutiteq MapView上放置一些標記。爲了創建這些標記,我創建了一個帶有半透明圓的位圖。OpenStreetMap使用自定義Xfermode將標記添加到Nutiteq MapView

int size = (int)(30*mDisplayMetrics.density); 
Bitmap androidMarkerBitmap = Bitmap.createBitmap(size, size, Bitmap.Config.ARGB_8888); 
Paint paint = new Paint(); 
paint.setColor(Color.argb(150, 255, 0, 0)); 

Canvas canvas = new Canvas(androidMarkerBitmap); 
canvas.drawCircle(size/2, size/2, size/2, paint); 
com.nutiteq.graphics.Bitmap markerBitmap = BitmapUtils.createBitmapFromAndroidBitmap(androidMarkerBitmap); 
androidMarkerBitmap.recycle(); 

每個標記具有相同的位圖。問題是位圖的透明度(正如你可以看到alpha不是0)。當我添加多個標記時,所有的位圖都簡單地相加了一個......問題是我不想爲透明度添加效果,而是需要獲取「變暗」效果。

http://img.blog.csdn.net/20140426213750328?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbG1qNjIzNTY1Nzkx/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center

有沒有辦法來改變Xfermode使用時MapView的借鑑了它的標記默認?

回答

0

不,Nutiteq SDK中沒有這樣的選項。您描述的效果需要將標記渲染到單獨的表面(具有「變暗」效果),然後將渲染的表面(帶有標記)分層到其他層頂上。這樣的功能非常昂貴,並沒有在SDK中實現。

+0

我懷疑它... – Massimo

相關問題