我想在mayview上将一个旋转的drawable作为overlayItem。 我在here找到了以下代码,以便在mapview上旋转绘图。
public Drawable rotateDrawable(float angle, Context context)
{
Bitmap arrowBitmap = BitmapFactory.decodeResource(context.getResources(),R.drawable.generic2rb);
// Create blank bitmap of equal size
Bitmap canvasBitmap = arrowBitmap.copy(Bitmap.Config.ARGB_8888, true);
canvasBitmap.eraseColor(0x00000000);
// Create canvas
Canvas canvas = new Canvas(canvasBitmap);
// Create rotation matrix
Matrix rotateMatrix = new Matrix();
rotateMatrix.setRotate(angle, canvas.getWidth()/2, canvas.getHeight()/2);
//Draw bitmap onto canvas using matrix
canvas.drawBitmap(arrowBitmap, rotateMatrix, null);
return new BitmapDrawable(canvasBitmap);
}
事情是它会将drawable画成画布并擦掉颜色(变成黑色);这将是将旋转的drawable放在其上的画布。但是黑色留在那里我怎么能让它透明以下有mapview?并且在旋转之后,结果在某些部分被切割(由于画布)。我怎样才能修好..
我想我应该使用mapview视图作为画布,但是如何?