android - 为什么android Canvas 中的绘制操作使用float而不是int for (x,y)?

原文 标签 android

为什么android Canvas 中的绘制操作使用float而不是int for (x,y)?
例如:
http://developer.android.com/reference/android/graphics/Canvas.html#drawCircle(float , float , float , android.graphics.Paint)

http://developer.android.com/reference/android/graphics/Canvas.html#drawRect(float , float , float , float ,android.graphics.Paint)

如果我有很多对象(比如 200 个)要在我的应用程序中绘制,并且每个对象都有一个类,我应该使用“int”还是“float”作为 x、y 属性(绘制对象时的位置)屏幕)?我认为“ float ”比“int”使用更少的内存。

class MyObject {
   public int x;
   public int y;
}

谢谢你。

最佳答案

float 是因为抗锯齿允许您在子像素级别进行绘制。
也因为可以有一个转换矩阵是 Activity 的(例如一个比例)。

float 和 int 都采用 32 位(最有可能)

关于android - 为什么android Canvas 中的绘制操作使用float而不是int for (x,y)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6064341/

相关文章:

android - Android拇指不在居中?

android - 是否可以在react-native中创建基于客户端工作区的应用程序?

android - android 中的 Skrill 支付网关集成

android - 为 Pre-Lollipop 设备创建循环显示

java - 返回并绑定(bind)到 ListView 的 double 数被截断

android - 如何消除我的适配器行布局上的间隙

java - 以编程方式检测android中的SIM卡更改

安卓 : Turn on a device programmatically

java - 如何在Android中仅在纵向模式下设计10英寸平板电脑?

java - 静态方法调用上的 Android java.lang.VerifyError