在 Canvas 中,用 RectF 绘制一个矩形,需要在 dp 或 px 中设置 top 和 left 吗?
Integer padding = 10;
Integer width = 100; // It is dp or px?
Integer height = 50;
RectF position = new RectF();
position.top = 0 + padding;
position.bottom = position.top + height;
position.left = 0 + padding;
position.right = position.left + width;
Run Code Online (Sandbox Code Playgroud)
http://developer.android.com/intl/es/reference/android/graphics/RectF.html 它不指示值是以 px 还是 dp 表示。
小智 6
正如已经指出的那样,Canvas 和 RectF 使用 px 而不是 dp。至于文档,Canvas ( http://developer.android.com/intl/es/reference/android/graphics/Canvas.html ) 和 RectF的文档只提到像素。
由于没有明确指出它们是dp,而且两个类都是直接派生自java.lang.Object,所以只能得出结论,它一定是“普通”像素。
如果由于某种原因,您需要将 dp 转换为 px,反之亦然,请查看此文档:http : //developer.android.com/intl/es/guide/practices/screens_support.html