在Java中使用canvas.drawBitmap()
方法繪制位圖,需要以下幾個步驟:
Bitmap
對象,可以通過BitmapFactory
類的decodeResource()
方法從資源文件中加載位圖,或者通過BitmapFactory
類的decodeFile()
方法從文件中加載位圖,或者通過Bitmap.createBitmap()
方法創建一個空的位圖。Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.image);
Canvas
對象,用于繪制位圖。Canvas canvas = new Canvas();
canvas.drawBitmap()
方法繪制位圖,可以指定繪制的位置和畫筆等參數。canvas.drawBitmap(bitmap, x, y, null);
完整的示例代碼如下:
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
public class MainActivity extends AppCompatActivity {
private Bitmap bitmap;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(new MyView(this));
// 加載位圖
bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.image);
}
private class MyView extends View {
public MyView(Context context) {
super(context);
}
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
// 設置畫筆顏色
Paint paint = new Paint();
paint.setColor(Color.RED);
// 繪制位圖
canvas.drawBitmap(bitmap, 0, 0, null);
}
}
}
以上代碼中,MyView
是一個自定義的View
類,用于繪制位圖。在onCreate()
方法中加載位圖資源,并將MyView
設置為當前的視圖。在MyView
的onDraw()
方法中使用canvas.drawBitmap()
方法繪制位圖。