<HOME

ScrollViewを使用してTextViewをスクロールに対応させる30分


TextViewは、それ単体ではスクロールに対応していません。

ScrollViewを使用して、画面内に収まらない量のテキストをもつTextViewをスクロールできるようにしてみましょう。

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

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

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

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

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

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

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

  2. まずはTextViewがそのままではスクロールに対応できていないことを確認してみましょう。

    1. レイアウトファイルを変更して、TextViewに、1画面に収まらない文字列を表示させるようにしてください。

      サンプル:activity_main.xml

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

    2. アプリを起動してみましょう。

      まだスクロールはできません。

  3. スクロールさせたいViewの親Viewに「ScrollView」を置くことで、スクロールできるようになります。

    1. レイアウトファイルを変更して、TextViewがScrollViewの子になるようにします。

      サンプル:activity_main.xml

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

    2. アプリを起動してみましょう。

      スクロールできるようになっていればOKです。

  4. 横方向にスクロールさせたい場合は「HorizontalScrollView」を使用します。

    1. レイアウトファイルを変更して、TextViewがHorizontalScrollViewの子になるようにします。

      サンプル:activity_main.xml

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

    2. アプリを起動してみましょう。

      横方向にスクロールできるようになっています。

なお、ScrollViewは「スクロールさせるためのView」で、複数のViewをレイアウトするためのものではないので、子Viewは「スクロールさせたいView」1つだけになります。

複数のViewをスクロールさせたい場合、LinearLayoutなどのLayoutで並べたうえで、そのLayoutがScrollViewの子になるようにしてください。

サンプル:activity_main.xml

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