Вы пробовали с галереей и просмотром изображений?
<RelativeLayout>
<ImageView android:id="@+id/BigView" android:layout_width="XXdip" android:layout_height="XXdip" android:scaleType="fitCenter" />
<Gallery android:id="@+id/MyGallery" android:unselectedAlpha="0.5" android:layout_below="@id/BigView" android:layout_height="XXdip" />
</RelativeLayout>
Вы должны указать высоту для вашей галереи. И вы добавляете OnItemSelectedListener.
final int[] p = {R.drawable.img1, R.drawable.img2, R.drawable.img3, ...};
final ImageView i = (ImageView) findViewById(R.id.BigView);
Gallery g = (Gallery) findViewById(R.id.MyGallery);
g.setAdapter(...);
g.setOnItemSelectedListener(new OnItemSelectedListener() {
public void onItemSelected (AdapterView<?> parent, View view, int position, long id) {
i.setImageResource(p[position]);
// Maybe you can try
// i.setImageDrawable(((ImageView) view).getDrawable());
}
});
С помощью метода scaleType fitCenter ваше изображение будет соответствовать размеру ImageView, сохраняя соотношение сторон.
Так что установите прямо большой размер.
В противном случае вы можете добавить ImageView в RelativeLayout в fill_parent как с размером макета, так и установить видимость исчезнувшего, добавив:
i.setOnClickListener(new OnClickLisyener() {
MyHiddenImageView.setImageResource(p[g.getSelectedItemPosition()]);
MyHiddenImageView.setVisibility(View.VISIBLE);
});