setImageResource
SDK-17で試した限り、正しいドローアブルフォルダーから画像を選択します。
res/drawable、res/drawable-hdpi、res/drawable-xhdpi フォルダーにそれぞれ同じ名前の 3 つの異なる画像を作成し、次のコードを実行します。
setContentView(R.layout.activity_imageview);
LinearLayout mainView = (LinearLayout) findViewById(R.id.main_view);
ImageView iv = (ImageView) findViewById(R.id.image_view);
iv.setImageResource(R.drawable.dataark);
ImageView iv2 = new ImageView(this);
iv2.setImageResource(R.drawable.dataark);
mainView.addView(iv2);
xml(iv) で追加された ImageView とプログラムで追加された ImageView (iv2) の両方が、res/drawable-xhdpi、つまり Samsung Galaxy Note の正しいフォルダからイメージをロードします。
そのため、setImageResource
DOES が正しいドローアブル フォルダーから画像を選択することは間違いありません。
参考までに、レイアウト xml は次のように非常に単純です。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/main_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<ImageView
android:id="@+id/image_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
</LinearLayout>