public static float SCALE_FROM_HIGH;//比例
public static int densityDpi;//密度
public static int screenWidth;//宽
public static int screenHeight;//高
public static void setScreen(Context c) {
DisplayMetrics dm = c.getResources().getDisplayMetrics();
densityDpi = dm.densityDpi;
screenWidth = dm.widthPixels;
screenHeight = dm.heightPixels;
SCALE_FROM_HIGH = (float) Config.densityDpi
/ (float) DisplayMetrics.DENSITY_HIGH;
}
//dip ----> px
public static int densityDpi;//密度
public static int screenWidth;//宽
public static int screenHeight;//高
public static void setScreen(Context c) {
DisplayMetrics dm = c.getResources().getDisplayMetrics();
densityDpi = dm.densityDpi;
screenWidth = dm.widthPixels;
screenHeight = dm.heightPixels;
SCALE_FROM_HIGH = (float) Config.densityDpi
/ (float) DisplayMetrics.DENSITY_HIGH;
}
//dip ----> px
publicstaticint dipToPixels(float dipValue) {
return (int) (dipValue * SCALE_FROM_HIGH + 0.5f);
}
//px ----> dip
publicint pixelsToDip(float pxValue) {
return (int) (pxValue / SCALE_FROM_HIGH + 0.5f);
}
Android的碎片化问题深重,大大小小的屏幕多大N(N>>3000)种,适配屏幕一直是个不好解决的问题.只好在网上搜索些解决办法,以上资料来自互联网.
浙公网安备 33010602011771号