2011-02-15 3 views
2

나는 이와 비슷한 질문을 잠시 거슬러 올라갔습니다. 응답이 없으므로 다시 말하려합니다. . .다른 기기 용 Android Canvas 2D 그래픽 크기 조정

Canvas 클래스의 2D 드로잉 프리미티브가 다른 장치 (화면 해상도가 다른 전화)에 맞게 올바르게 조정되도록하는 "모범 사례"는 무엇입니까? 자동으로 크기가 조정됩니까? 전체 캔버스의 크기를 조절할 수있는 방법이 있습니까? 내가 각 라인, 원 및 포인트를 개별적으로 그릴 때 크기를 감지하고 자체 스케일링을 수행해야합니까? 보기를 조작하여이 작업을 수행해야합니까? 또는 무엇을?

목표는 그래픽이 사용 가능한 해상도를 최대한 활용하기 위해 화면을 가득 채우지 만 오버플로하지 않도록하는 것입니다.

미리 감사드립니다.

답변

4
내 응용 프로그램에서 그것을 할 방법은 내 View의 크기를 추적하는 것입니다

: 총의 비율의 측면에서 내가 수동으로 무언가를 그려야 할 때마다

@Override 
protected void onSizeChanged(int width, int height, int oldw, int oldh) { 
    //do some calculations with width and height 
} 

그럼, 내가 할 해결. 귀하의 마일리지는 귀하가하고자하는 바에 따라 다를 수 있습니다.

+0

+1, 나는 동일한 교장을 사용하여 성공했습니다. – user432209

+0

"총 해상도의 백분율"로 무엇을 의미합니까? 원의 선의 길이, 원의 지름, 도트의 크기를 프로그래밍 방식으로 조정한다는 의미입니까? 차트, 그래프 및 통계 및 의료 데이터의 다른 표현을 그려 내고 있습니다. 그러나 이것에 대해서도 안드로이드가 2D 드로잉을위한 장치 독립적 인 좌표계를 가지고 있지 않다는 것을 확인하고 싶었습니다. –

+0

그가 그렇다는 것을 의미합니다. 안드로이드의 좌표계는 장치 독립적 인 것이 아닙니다. –