0

hdpiからldpiまでサポートするアプリがあります。リソースへのアクセスに問題なく、正常に動作します。このアプリには ListView があり、リストの各ビューに画像を追加することにしました。そこで、解像度ごとに 3 つの png 画像を用意し、それぞれのリソース ディレクトリに配置しました。

mImageView.setImageDrawable(getBaseContext().getResources().getDrawable(R.drawable.hello) hdpi 2.2エミュレーターではすべて問題ありませんが、iImageViewにドローアブルを配置getBaseContext()したbindViewメソッド行で2.2 mdpiおよびldpiのNullPointerExceptionでクラッシュし getApplicationContext()ます。

アプリが -mdpi フォルダーを見ていないと思います。しかし、なぜ hdpi 版が正常に動作するのかわかりません。ベア ドローアブル ディレクトリには何もないことに注意してください。さらに、アプリはこれらのフォルダーを調べる方法を知っています。これは、ListView を使用してフォルダーを起動するために使用された以前のアクティビティで行うためです。

何か案が ?

4

2 に答える 2

0

ターゲットSDKは何ですか?> 3(> 1.5)である必要があります

于 2011-01-20T20:14:03.427 に答える
0

おそらく、 getBaseContext() をコンテキストに置き換える必要があります。この質問のトップの回答を参照してください

于 2011-01-20T18:40:46.690 に答える