1
我目前在基於不同GeoPoints的MapView上繪製線條以指示扇區。用下面的代碼(這是在覆蓋層中):在MapView上繪圖透明
@Override
public void draw(Canvas canvas, MapView mapView, boolean shadow)
{
for(Polygon polygonTemp : polygonList)
{
Path p = new Path();
Projection projection = mapView.getProjection();
boolean firstTime = true;
for(GeoPoint geoPoint : polygonTemp.getGeoPointList())
{
Point drawPoint = new Point();
projection.toPixels(geoPoint, drawPoint);
if(firstTime)
{
p.moveTo(drawPoint.x, drawPoint.y);
firstTime = false;
}
else
{
p.lineTo(drawPoint.x, drawPoint.y);
}
}
p.setFillType(Path.FillType.EVEN_ODD);
Paint polyPaint = new Paint();
polyPaint.setStrokeWidth(1);
polyPaint.setStyle(Paint.Style.FILL_AND_STROKE);
polyPaint.setAntiAlias(true);
polyPaint.setColor(Color.parseColor(polygonTemp.getColor()));
canvas.drawPath(p, polyPaint);
firstTime = true;
}
super.draw(canvas, mapView, shadow);
}
的問題是,我希望他們充滿了某種程度的透明度,所以我仍然可以看到充滿部門下的地圖。我試圖設置polyPaint.setAlpha(),甚至到255(應該是完全透明的),並且它什麼都不做,它完全相同。
任何人都知道我在做什麼錯?
嗯,感覺挺傻的,現在...一些我讀255的原因是完全透明的,而不是相同的... 奇怪的是,我實際上嘗試polyPaint.setAlpha(100)並上升到255,根本沒有注意到透明度的差異。現在,你的方式和setalpha的方式似乎工作= \ 無論如何,thx:P – shokora 2010-11-16 21:09:44