0

我想在屏幕上显示某种图形。我知道我可以使用位图。我将图像保存在文件夹中res/drawable-hdpi,它是player.png.

现在我想将此图像加载到我的位图中,我该怎么做?像这样:

bitmap = BitmapFactory.decodeFile("/drawable-hdpi/player.png");

但它不起作用。如果有人能告诉我如何在绘图时显示此位图方法,我也将不胜感激,如下所示:

public void draw(Canvas canvas){    
  canvas.drawBitmap(bitmap, posX, posY, null);
}
4

3 回答 3

1

我想我可能对你有一个简单的解决方案,但如果这是你想要的,我不知道。请检查我的代码并让我知道是否有效!

Drawable drawable = Context.getResources().getDrawable(R.drawable.my_image);
Bitmap bitmap =((BitmapDrawable) drawable).getBitmap();
于 2012-07-18T23:13:41.237 回答
0

这就是你想要的。

bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.player); 
canvas.drawBitmap(bitmap, 0, 0, null);

编译过程将对所有资源的引用放在 R.java 文件中。

编辑:此代码是从继承自 View 的类中完成的。

于 2012-07-19T00:28:34.020 回答
0

您可以使用查询 android 库。它很容易使用。这是一个开源项目。仍处于测试阶段。但它非常稳定,我在所有应用程序中都使用它。

aq.id(R.id.image1).image("http://www.vikispot.com/z/images/vikispot/android-w.png");

http://code.google.com/p/android-query/wiki/AsyncAPI?tm=6

于 2012-07-19T01:34:45.840 回答