내 Android 앱에는 크기 나 밀도에 관계없이 모든 화면에서 정확하게 측정해야하는 눈금자가 있습니다. 눈금자는 BitmapFactory
을 통해 이미지보기로 설정 한 드로어 블 리소스입니다.모든 화면에서 일관되게 비트 맵의 크기를 결정하는 확실한 방법은 무엇입니까
처음에는 비트 맵을 상대 layout_width
이 고정 된 50mm (기본 png의 정확한 너비)로 설정되고 축척 유형이 FIT_CENTER
인 이미지보기로 설정했습니다.
안드로이드 사전 스케일링이 상당히 어려움을 겪었 기 때문에 BitmapFactory
옵션 inScaled = "false"
을 사용하여 매니페스트에 android:anyDensity="true"
을 선언하여이 프로세스를 비활성화하려고했습니다.
내가 사용하고있는 눈금자 비트 맵은 모두 폭이 50mm 인 320dpi png입니다. 내 생각은 저밀도 화면에서 정확히 필요한 너비로 멋지게 축소 할 수있는 고해상도 이미지를 제공하는 것이 었습니다.
위의 방법은 베타 테스트를 거친 거의 모든 장치에서 성공적으로 작동합니다. 그러나 HTC Evo 4G에서는 눈금자가 너무 크게 보입니다. Android 2.3.5를 실행하는 후자의 장치는 지금까지보고 된 유일한 실패입니다.