Android,关于装置独立像素(dip/dp),关于机型屏幕适配
Android,关于设备独立像素(dip/dp),关于机型屏幕适配图1:?Android平台如何将真实屏幕密度和大小映射到通用
Android,关于设备独立像素(dip/dp),关于机型屏幕适配
图1:?Android平台如何将真实屏幕密度和大小映射到通用的密度和尺寸配置.
表 1. Android SDK中包含的模拟器皮肤的屏幕尺寸和密度,以及其他典型的分辨率.
?SizeLow density (120), ldpiMedium density (160), mdpiHigh density (240), hdpiExtra high density (320), xhdpiSmall screen2 ~?3.5 inch
QVGA (240x320)?480x640??Normal screen3+ ~ 4.5 inch
WQVGA400 (240x400)??
WQVGA432 (240x432)HVGA (320x480)WVGA800 (480x800)??
WVGA854 (480x854)??
600x1024?640x960?Large screen4+?~ 7 inch
WVGA800**?
(480x800)?
WVGA854**?
(480x854)WVGA800* (480x800)??
WVGA854* (480x854)??
600x1024??Extra Large screen7?~ 10+ inch600x1024768x1024?
WXGA (768x1280)??
800x1280?1152x1536?
1152x1920??
1200x19201536x2048?
1536x2560??
1600x2560?
* 要模拟此配置, 使用WVGA800 或 WVGA854创建一个AVD, 指定自定义密度160.
** 要模拟此配置, 使用WVGA800 或 WVGA854创建一个AVD, 指定自定义密度120.
?ps: 增加辅助工具类:
- import?android.content.Context;??
- ??
- public?class?DensityUtil?{??
- ??
- ??????
- ????public?static?int?dip2px(Context?context,?float?dpValue)?{??
- ????????final?float?scale?=?context.getResources().getDisplayMetrics().density;??
- ????????return?(int)?(dpValue?*?scale?+?0.5f);??
- ????}??
- ??
- ??????
- ????public?static?int?px2dip(Context?context,?float?pxValue)?{??
- ????????final?float?scale?=?context.getResources().getDisplayMetrics().density;??
- ????????return?(int)?(pxValue?/?scale?+?0.5f);??
- ????}??
- } ?