Tia*_*sil 12 user-interface android
我正在阅读这篇文章:http://developer.android.com/guide/practices/screens_support.html
它说Android用于在dp单位到px单位之间转换的公式如下:
px = dp * (dpi / 160)
Run Code Online (Sandbox Code Playgroud)
文章还给出了一个例子,当dpi为240时,它给出了px = 1.5(我正在计算单个dp像素)
但是,1.5究竟是什么意思呢?一旦px单位实际上是物理设备像素,Android会绘制1或2像素吗?
Mar*_*lts 15
这取决于具体情况.
如果在隐含大小的上下文中使用dp值(如android:layout_width
属性),则将使用为Resources.getDimensionPixelSize()描述的逻辑.也就是说,px值将四舍五入到最接近的整数值,特殊情况是,如果px > 0,则实际值将至少为1.
如果在隐含偏移的上下文中使用dp值,就像android:insetLeft
Inset Drawable 的属性一样,将使用为Resources.getDimensionPixelOffset()描述的逻辑.也就是说,px值将简单地截断为整数值.
有时会使用未修改的浮点值,例如Shape Drawable中标记的android:dashWidth
属性<stroke/>
,但这种情况非常罕见.通常使用大小或偏移逻辑,即使可以使用浮点值.
归档时间: |
|
查看次数: |
5913 次 |
最近记录: |