在Android中,我们应该使用哪种度量单位,像素(px)、设备独立像素(dp)、密度无关像素(dip)还是可缩放像素(sp)?

4

在Android中应该使用哪种度量单位:pxdpdipsp

在Android布局设计中是否有类似于Web开发中CSS的百分比单位?

在Android中,哪种度量单位是设计跨手机兼容性时安全可靠的?


1
请参考以下链接:https://dev59.com/A3I-5IYBdhLWcg3wEELu - NguyenDat
我认为你需要这个链接:https://dev59.com/A3I-5IYBdhLWcg3wEELu - AsmaG
4个回答

5

dip 是用于需要静态大小的情况。这是一种“设备独立像素”,在任何手机/平板电脑上大致呈现相同的物理大小。

但是,最好使用 layout_weights 和巧妙实现 match_parent 和 wrap_content 来填充大多数字段。

编辑:只是提醒一下,dip = dp ... 编译器等效处理它们。使用您喜欢的任何一个。


1
有没有办法将我的屏幕分成74%和2%的间隙以及24%?你能提供这种布局的XML吗?它将在所有设备上均匀显示。谢谢! - Vins
1
如果你想这样做,将一个视图的layout_weight设置为74,将中间视图设置为2,第三个视图设置为24。确保它们每一个都具有相同的layout_width或layout_height值(无论你试图分配什么)。 - Eric

2
  1. 通常来说,布局应该使用dp,字体大小应该使用sp。
  2. 唯一的百分比布局机制是在线性布局中使用layout_weight。
  3. 请参考答案#1。

1

dip 等同于 dp 使用 dp 作为所有资源的单位,因为它可以根据屏幕分辨率进行渲染。 而对于字体大小,请使用 sp 而不是 px,因为 sp 可以根据屏幕尺寸和分辨率进行工作。


1

现在已经太晚了,但只是为了帮助像我这样的其他人..

使用layout_constraintHorizontal_biaslayout_constraintVertical_bias在将其连接到边缘后按百分比设置布局。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接