在Android视图中绘制java.awt.image.BufferedImage

时间:2011-07-05 03:30:41

标签: java android bufferedimage

有没有办法在Android视图中绘制java.awt.image.BufferedImage?

我有一个普通的Java / Swing代码绘制到BufferedImage中并将其用于绘制到Swing组件中。

我想将此代码复制/粘贴到我的Andoid项目中,并以某种方式绘制到View中。

1 个答案:

答案 0 :(得分:2)

好吧所以我认为你习惯在计算机上使用java中的图形,在android中它有点不同,而不是拥有BufferedImage实例你有一个Drawable实例。 Drawable可以为你绘制一个BufferedImage,以及如何:

Drawable image = context.getResourses().getDrawable(R.drawable.my_super_cool_image);

这就是你如何设置一个Drawable,生病了你。查看您的项目(希望您使用的是Eclipse),然后在路径中查找名为res的文件夹,然后查找以drawable开头的3个文件夹。将您的图像放在所有这3个文件夹中。完成后,输入上面的代码,但不要将my_super_cool_image放入要绘制的图像的名称(p.s。所有字母必须小写,不能有空格)。稍后当您想要绘制此图像时,您应该执行以下操作:

public void onDraw(Canvas canvas)
{
    image.draw(canvas);
}

我知道你可能会看到这个:

public void paint(Graphics g)
{
    Graphics2D g2 = (Graphics2D)g;
    g2.drawImage(image,0,0,null);
}

除非你使用android,否则你必须覆盖onDraw(Canvas canvas)meathod而不是paint()。

我希望这有帮助!