如何加载和显示位图

时间:2012-07-18 23:05:10

标签: java android bitmap

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

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

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

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

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

3 个答案:

答案 0 :(得分:1)

我想我可能会为你做一个简单的分析,但如果这是你想要的,我不会。检查我的代码并告诉我是否有效!

Drawable drawable = Context.getResources().getDrawable(R.drawable.my_image);
Bitmap bitmap =((BitmapDrawable) drawable).getBitmap();

答案 1 :(得分:0)

这就是你想要的。

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

编译过程会引用R.java文件中的所有资源。

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

答案 2 :(得分:0)

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

aq.id(R.id.image1)图像配( “http://www.vikispot.com/z/images/vikispot/android-w.png”);

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