我有一个 Java 小程序,我在其中加载和动画 Sprite,函数如下所示:
public void addSprite(BufferedImage image, long duration,
int rows, int cols, int width, int height) {
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
long durationFrame = (long) (duration / (cols * rows));
addFrame(image.getSubimage(j * width, i * height,
width, height), durationFrame);
}
}
}
addFrame 方法将子图像保存到 ArrayList 中,其中包含图像显示的持续时间。
一切正常,但显然BufferedImage不是 Android 包的一部分,因此我必须改用 Bitmap 修改方法。
但是我在用类似的东西交换getSubimage方法时遇到问题,我认为 Bitmap 类的getPixels(...)方法应该这样做,但我不知道如何正确使用它来获得相同的结果,因为参数完全不同,有人可以给我一个提示我如何交换这个:
image.getSubimage(x, y, width, height)
有了这个(假设 getPixels() 方法是正确的选择):
image.getPixels(pixels, offset, stride, x, y, width, height)
已经感谢支持