我有一个名为obstacle.png的可绘制资源,它存在于我的每个drawable-“density”文件夹中。然而,每当我运行应用程序时,当我将位图的宽度分配给我的_width变量时,我得到一个空指针异常。此代码仅在mdpi和Galaxy TAB插件AVD上运行。它在ldpi或hdpi AVD上失败。为什么呢?
19 public Weapon(Context context) {
20 super(context);
21 _weapon = BitmapFactory.decodeResource(getResources(), R.drawable.obstacle);
22 _width = _weapon.getWidth();
23 _height = _weapon.getHeight();
24 } //constructor
LogCat:
Caused by: java.lang.NullPointerException
at com.shootball.Weapon.<init>(Weapon.java:22)
答案 0 :(得分:0)
_weapon
为空,因为BitmapFactory.decodeResource(getResources(), R.drawable.obstacle);
返回null。
答案 1 :(得分:0)
检查所有可绘制文件夹中是否有obstacle.png图像。如果没有图像,则返回空值。