android:visual/art assets

问题描述:

我想为android做一个游戏。我目前已将所有艺术资源加载到drawables文件夹中,但我的问题是如何实际引用特定的资源来呈现它?android:visual/art assets

我知道每个文件都有唯一的@id,我可能必须在onDraw(canvas)方法的@override中实现。所以问题是我如何实际显示图像到屏幕上?

我已经浏览了好几本书,所有这些讨论的是从网上获取图像,或者用绘图功能手动绘制图像,但是我已经准备好使用.bmp中的资源,而且它们是足够复杂的编码油漆,以手绘他们将是一个非常大的偏见。

我宁愿看一个方向(特定的书,教程,博客,开源代码[假设质量评论])我仍然有点学习Java作为我的第二编程语言,所以我不想翻译伪代码直接到java呢。

[添加到编辑] 使用Paint()绘制每个帧都有较低的开销,然后呈现一个位图,并且只在显示器更改时更改?

您可以使用Canvas类的drawBitmap变体之一。一个画布对象在onDraw方法中传递。您可以使用BitmapFactory类来加载资源。

你可以阅读一个不错的教程here

为2Dgames我会建议你使用SurfaceView

加载图像作为位图,让画布上绘制一个位图。

动画图像有两种可能的方式:

  • 你可以膨胀的观点
  • 创建循环线程调用绘制函数

Here's some good starting tutorial about displaying image in Android, especially for games