0

我有一个支持从 hdpi 到 ldpi 的应用程序。它工作正常,访问资源没有任何问题。在这个应用程序中,我有一个 ListView,我决定在列表的每个视图中添加一个图像。所以我准备了三张png图片,每种分辨率一张,放在各自的资源目录下。

使用 hdpi 2.2 模拟器一切都很好,但它在 2.2 mdpi 和 ldpi 中的 NullPointerException 崩溃,在我将 drawable 放入 iImageView 的 bindView 方法行: mImageView.setImageDrawable(getBaseContext().getResources().getDrawable(R.drawable.hello) 我试图替换getBaseContext()甚至getApplicationContext()删除它但没有成功。

我猜该应用程序不在 -mdpi 文件夹中。但是,我不明白为什么 hdpi 版本可以正常工作。请注意,裸可绘制目录中没有任何内容。此外,该应用程序知道如何查看这些文件夹,因为它是在之前的活动中使用 ListView 启动的。

任何的想法 ?

4

2 回答 2

0

也许您应该将 getBaseContext() 替换为您的上下文。请参阅此问题的最佳答案

于 2011-01-20T18:40:46.690 回答
0

你的目标 SDK 是什么?它应该 > 3 (>1.5)

于 2011-01-20T20:14:03.427 回答