0

キャンバスを作成し、その上に画像を設定していますが、その画像をすべての画面の中央に配置したいです。タブやギャラクシーなどの画面を変更すると、それ自体のサイズが必要になります。しかし、以下のコードでは、画面の右下隅に毎回画像が表示されます。

これが私のコードです:

@Override
protected void onSizeChanged(int w, int h, int oldw, int oldh) {
    this.w = w;
    this.h = h;
}

@Override
protected void onDraw(Canvas canvas) {
    super.onDraw(canvas);

    Bitmap b = BitmapFactory.decodeResource(getResource(), R.drawable.north_india);
    canvas.drawBitmap(b, w/2, h/2, mPaint);
}
4

1 に答える 1

0

画像は左上隅から描画されます。したがって、画像の寸法を修正する必要があります。

canvas.drawBitmap(b, (w - b.width()) / 2, (h - b.height()) / 2, mPaint);
于 2012-07-27T07:57:30.413 に答える