【发布时间】:2012-04-16 06:11:56
【问题描述】:
我有以下代码可以将可绘制对象旋转一定的度数。
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);
}
新的 SDK 表示
BitmapDrawable(canvasBitmap);
已弃用。有什么替代品吗?
http://developer.android.com/reference/android/graphics/drawable/BitmapDrawable.html
【问题讨论】:
-
'new BitmapDrawable(context.getResources(), canvasBitmap);' 有什么问题?