让我开始说,我已经看到了这个线程:我怎么能取代MyLocationOverlay的指南针图像?
根据那个线程,它告诉我我不能覆盖图标。
没什么大不了的。也就是说,我正在想办法实现它。
我是否正确地说,我需要创建自己的自定义画布,简单地绘制图标并旋转它,并在扩展MyLocationOverlay的另一个自定义类中重写drawcompass方法?
如果这是正确的,我如何创建这个自定义画布的图标/旋转它?(我没有在android操作系统中绘图的经验)
不需要制作自己的自定义画布,只需要重写drawCompass方法,因此似乎我链接的初始问题中的信息是不正确的:
@Override
protected void drawCompass(Canvas canvas, float bearing) {
Bitmap arrowBitmap = BitmapFactory.decodeResource( mContext.getResources(), R.drawable.compass);
Matrix matrix = new Matrix();
matrix.postRotate(bearing);
Bitmap rotatedBmp = Bitmap.createBitmap(
arrowBitmap,
0, 0,
arrowBitmap.getWidth(),
arrowBitmap.getHeight(),
matrix,
true
);
canvas.drawBitmap(rotatedBmp, 20, 20, null );
}