[Android & Kotlin] ScrollView 画面を縦にスクロールさせてみた

Androidは画面をスクロールさせることでたくさんの情報を表示させることができます。Kotlinでも ScrollVew を使うと簡単に縦方向にスクロールさせることができます。
 
1x1.trans - [Android & Kotlin] ScrollView 画面を縦にスクロールさせてみた


Android Studio 3.5.3
API 29
 




ScrollView

 
ScrollViewの設定自体はとても簡単です。
スクロールさせたいところを ScrollView で挟み込むだけです。
 
試しにこの画像をスクロールさせてみましょう。画像はなるべく縦長がいいのですが
 

1x1.trans - [Android & Kotlin] ScrollView 画面を縦にスクロールさせてみた
650 x 860

 

 

レイアウトファイルに記述

 
レイアウトXMLファイルでターゲットの画像をImageViewで表示し、それをScrollViewではさみます。もっともこれはレイアウトで記述するだけなので、JavaもKotlinもないのですが…

activity_main.xml


 
strings.xml


このままで実行させてると、上下にスクロールするのが分かると思います。

 

コードで記述

 
レイアウトXMLファイルを使わずにコードで書く場合は
画像をImageViewに設定して、ScrollViewに追加して表示します。
 
MainActivity.kt

 

one direct child

 
通常、画面にUIが一つというのはあまりありませんので、複数のUIをScrollViewで挟むと

ScrollView can host only one direct child

というエラーになります。ScrollViewは子Viewを1つしか持てません。
 
どうするかというと、テキストやボタンなどをまとめてスクロールさせたい場合は、LinearLayout等でくくり、ScrollさせるのはLinearLayoutだけという体裁をとればいいのです。

実際に縦長画像と上下にテキスト、ボタンを置いたレイアウトをスクロールさせてみます。

actiity_main.xml


 
strings.xml


猫の画像を上下にスクロールできるようになりました。
 

 
 
Ref:
ScrollView | Android Developers

シェアする

  • このエントリーをはてなブックマークに追加

フォローする