画面より大きい画像の場合、スクロールで表示

画面より大きい画像の場合、スクロールで表示

端末の画面に入りきらない画像をレイアウトに表示した場合
通常では画面に入りきらない

この対策は、
ScrollView

HorizontalScrollView
を組み合わせることで画像を上下左右に
スクロールして表示できるようになる

まずは、レイアウトファイルで
ScrollView
HorizontalScrollView
LinearLayout
ImageView
というような構造で作成する

ソースにすると

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content">

<HorizontalScrollView
android:layout_width="match_parent"
android:layout_height="match_parent">

<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">

<ImageView
android:layout_width="@dimen/image_size"
android:layout_height="@dimen/image_size"
android:background="@drawable/background"/>

</LinearLayout>

</HorizontalScrollView>

</ScrollView>

@dimenに関しては
http://www.techdoctranslator.com/android/guide/resources/available-resources/more-resources
を参考に

このように
ScrollView
HorizontalScrollViewを使うことで
少ないコードでも上下左右のスクロールが可能になる

ただし、斜めスクロールはできない
斜めスクロールも可能にしたいのなら
Viewのカスタマイズが必要になる

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です