Почему canvas не такого размера, как view в onDraw? (Android)

Я пробовал с этим

@Override
protected void onDraw(Canvas canvas)
{
    Log.e("TEST", "canvas width: " + canvas.getWidth() + "");
    Log.e("TEST", "view width: " + this.getWidth() + "");

    Log.e("TEST", "canvas height: " + canvas.getHeight() + "");
    Log.e("TEST", "view height: " + this.getHeight() + "");
    super.onDraw(canvas);
    Log.e("TEST", "canvas width: " + canvas.getWidth() + "");
    Log.e("TEST", "view width: " + this.getWidth() + "");

    Log.e("TEST", "canvas height: " + canvas.getHeight() + "");
    Log.e("TEST", "view height: " + this.getHeight() + "");
}

И вот результат:

canvas width: 320
view width: 480
canvas height: 533
view height: 300
canvas width: 320
view width: 480
canvas height: 533
view height: 300

Часть из моего main.xml

    android:layout_width="480px"
    android:layout_height="300px"

Согласно моим распечаткам журнала и части моего xml, размер представления правильный. У меня устройство 480x800, а ширина и высота, разделенные на результаты журнала, дают 1,5 (800/533 = 1,5 и 480/320 = 1,5), поэтому мне кажется, что на весь экран можно рисовать Canvas. Почему это так, и почему он такой маленький и что я должен сделать, чтобы рисовать обычным способом?

Ответы на вопрос(1)

Ваш ответ на вопрос