Android ImageView问题

时间:2011-01-06 22:21:15

标签: android imageview

我在drawable-hdpi文件夹中有图像(img1.png),但是当我使用下面的代码时,我得到了NullPointerException(?)。我错过了什么吗?

int id = getResources().getIdentifier("img1", "drawable", getPackageName());  
    imgView.setImageResource(id); 

由于

4 个答案:

答案 0 :(得分:3)

试试这段代码:

imageView.setImageResource(R.drawable.img1);

取自http://developer.android.com/guide/topics/resources/accessing-resources.html

答案 1 :(得分:1)

您是否初始化了imgView

imgView = new ImageView(this);

即使你已经这样做了,也不是这样做的方式......它应该是这样的:

imgView = (ImageView)findViewById(R.drawable.img1);

答案 2 :(得分:1)

如果您还没有找到修复程序,这可能与support-screens标记有关。 在Android的更高版本中,如果将其设置为true,它将为您重新调整位图并更改内容。我发现有:

<supports-screens android:anyDensity="true" />

使得可绘制图像按预期工作。 (图像以原始分辨率返回。)

请参阅:http://developer.android.com/guide/topics/manifest/supports-screens-element.html

答案 3 :(得分:0)

试试这个

 Bitmap img1 = BitmapFactory.decodeResource(getResources(), R.drawable.img1);

这会使您的图像成为位图。祝你好运!