现在的位置: 首页 > 综合 > 正文

Android中的长度单位分析 以及 Andriod布局的自适应的一些建议 和hdpi的划分以及屏幕分辨率等

2018年04月21日 ⁄ 综合 ⁄ 共 739字 ⁄ 字号 评论关闭
dip(dp): device independent pixels(设备独立像素)
dip,就是把屏幕的高分成480分,宽分成320分(特重要比如你做一条160dip的横线,无论你在320还480的模拟器上,都是一半屏的长度。
dpi:dot per inch
dpi=(√(横向分辨率^2+纵向分辨率^2))/屏幕尺寸)
ppi:pixels per inch(跟dpi一样)
计算了一下小米手机屏幕的PPI,4.0英寸、分辨率854X480,PPI(DPI)
 
  =√(854^2+480^2)/4=244.912……≈245.
px:pixel
sp:scaled pixels(放大像素),主要用于字体显示。
pt:point,是一个标准的长度单位,1pt=1/72英寸,用于印刷业。
 
平常所说的hdpi等划分方法(按DPI来划分):
最后是关于屏幕的自适应的一些建议:
1.尽量多使用RelativeLayout和LinearLayout少使用绝对布局
2. 多使用weight属性  
3.Andriod的辅助工具九妹来制作自己的 .9 图片 
4.少用px等单位 多用长度距离多用dp 字体多用sp
5.尽量去习惯用代码创建布局,不要老是一直依赖界面编辑器 因为界面编辑器会让你忽略好多东西  只有多用代码去创建布局你才能更能理解到自适应的一些方面
6.给你们一个常用的转换,因为代码创建的时候长度单位是px 所以一下是一个px和dp的转换:
public static int Dp2Px(Context context, float dp) {
final float scale = context.getResources().getDisplayMetrics().density;
return (int) (dp * scale + 0.5f);
}

抱歉!评论已关闭.