Почему 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. Почему это так, и почему он такой маленький и что я должен сделать, чтобы рисовать обычным способом?