<HOME

ImageViewを使用して画像を表示する30分


ImageViewは、画像を表示するためのViewコンポーネントであり、Androidプラットフォームにより提供されるAPIの一つです。

ImageViewを使用して画面に画像を表示してみましょう。

  1. 「ImageViewTraining」アプリを作成します。

    1. Android Studioを起動し、新規プロジェクトを作成します。

      「Welcome to Android Studio」画面の場合は、「Start a new Android Studio project」をクリックします。

      別のプロジェクトが開いている場合は、ツールバーから「File」→「New」→「New Project...」をクリックします。

    2. HelloWorldの時と同じようにプロジェクトを作成していきます。

      アプリ名は「ImageViewTraining」としてください。

      今回は「Backwards Compatibility (AppCompat)」のチェックは外しておきます。

  2. ImageViewに表示する画像リソースを追加しましょう。

    1. drawableフォルダを右クリック→「Show in Explorer」でエクスプローラを表示し、drawableフォルダに任意のPNG画像を格納します。

      ファイル名は「sample_image.png」としておきましょう。

  3. レイアウトファイルのTextViewをImageViewに変更し、画像を表示させてみましょう。

    1. 「activity_main.xml」を編集し、TextView要素を除去して、代わりに以下のコードを追記します。

      「android:src」で、画像リソースをImageViewにセットしています。

      コードを表示するにはJavaScriptを有効にしてください

      サンプル : activity_main.xml

      コードを表示するにはJavaScriptを有効にしてください

    2. アプリを実行します。

      自分が追加した画像が表示されていればOKです。

    3. 画像の縦横比が画面と一致していない場合は隙間ができています。縦横いっぱいに広げてみましょう。

      ImageViewに属性「android:scaleType」を追加して、値に「fitXY」(X=横方向、Y=縦方向、に対してフィットさせる)を指定します。

      コードを表示するにはJavaScriptを有効にしてください

    4. アプリを実行します。

      自分が追加した画像が縦横いっぱいに伸長して表示されていればOKです。

  4. ソースコード上で、レイアウトからImageViewを取り出して使用してみましょう。

    1. (TextViewの項で学習したのと同じように)ソースコードからidを指定してImageViewのインスタンスを取得します。

      1. MainActivity.javaに以下のコードを実装します。

        コードを表示するにはJavaScriptを有効にしてください

        ImageViewクラスの変数を宣言して、findViewByIdで取得したオブジェクトを代入しています。

    2. ImageViewに設定されている画像をソースコードから変更してみましょう。

      1. ImageViewには、テキストを変更するための「setImage~」メソッドが用意されています。

        画像リソースのIDや、動的に生成したDrawableオブジェクトやBitmapオブジェクトを指定することができます。

      2. 以下のコードを実装してみましょう。

        コードを表示するにはJavaScriptを有効にしてください

        サンプル : MainActivity.java

        コードを表示するにはJavaScriptを有効にしてください

      3. アプリを実行します。

        アイコン画像(ドロイド君)が表示されていればOKです。

  5. ソースコード上で、ImageViewのインスタンスを生成してみましょう。

    1. ソースコードでImageViewを生成してコンテンツViewにセットします。

      MainActivity.javaに以下のコードを実装します。

      サンプル : MainActivity.java

      コードを表示するにはJavaScriptを有効にしてください

      ImageViewクラスのコンストラクタを利用してインスタンスを生成し、画像リソースを指定しています。

      画像リソースは、Android標準で用意されているメニューアイコン(カメラ)を指定しています。

    2. アプリを実行します。

      カメラの画像が表示されていればOKです。

  6. ImageViewで使用できるAPIのうちよく使うものを紹介します。

    これらをソースコードから利用する際のAPIについては、リンク先リファレンスの「Related methods:」に記載されていますので、そちらを参照してください。

    • android:src

      表示する画像を指定します。
      drawableリソースや、色を指定できます。
    • android:scaleType

      表示する画像のサイズを、ImageViewのサイズに合わせてどのように調整するかを指定します。
      例えば、「fitXY」が指定されていると、縦横いっぱいに、ImageViewのサイズにフィットするように画像が表示されます。

ImageViewに用意されているAPIはまだまだたくさんあります。

詳細についてはAPIリファレンスに記載されています。

また、Androidは先人たちがネット上にたくさんの情報を残してくれています。

これらも活用して、是非このAPIを有効に使えるようになってください。