单位

android 布局中的单位及分辨率自解

杀马特。学长 韩版系。学妹 提交于 2020-04-06 23:50:41
先上一个网上copy的 px :是屏幕的像素点 in :英寸 mm :毫米 pt :磅, 1/72 英寸 dp :一个基于 density 的抽象单位,如果一个 160dpi 的屏幕, 1dp=1px dip :等同于 dp sp :同 dp 相似,但还会根据用户的字体大小偏好来缩放。 建议使用 sp 作为文本的单位,其它用 dip 然后是我自己的理解: Android 的屏幕密度是以 160 为基准的 , 屏幕密度 (densityDpi) 为 160 时 , 是将一英寸分为 160 份 , 每一份是 1 像素 . 如果屏幕密度 (densityDpi) 为 240 时 , 是将一英寸分为 240 份 , 每一份是 1 像素 . 1 英寸 /160( 机器 x) = 1 英寸 /240( 机器 y) = 1px 打个比方 , 一个三英寸的显示屏幕的机器 , 如果屏幕密度 (densityDpi) 为 160, 即密度比 (density)1.0 时 , 画一条 160dip 和 160px 的线条 , 两个都是 1 英寸 . 可如果还是三英寸的屏幕 , 如果屏幕密度 (densityDpi) 变为 320, 即密度比 (density)2.0 时 ,1 英寸有 320 像素了 , 此时 160px 显示就是半英寸 . 160dip 显示还是 1 英寸 , 因为 1dip =