[Android] ScrollView 画面の縦スクロール

scrollview vertical 01 - [Android] ScrollView 画面の縦スクロール
スマホの画面はPC程大きくはありません。画面を縦方向、横方向にスクロールさせることでよりたくさんの情報を表示させるために ScrollVew があります。
まず基本の縦スクロール、ScrollViewの使い方を見てみましょう。

Android Studio 3.5.3
API 29
 



ScrollView

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

cat  00 - [Android] ScrollView 画面の縦スクロール

 

 

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

 
レイアウトXMLファイルでターゲットの画像をImageViewで表示し、
それをScrollViewではさみこみます。

activity_main.xml

 
drawableに画像を入れて、
ワーニング対策でandroid:contentDescriptionを設定
strings.xml

 
実行させてると、上下にスクロールするのが分かると思います。
尚、画面と画像サイズがぴったりだとスクロールする必要がなくなってスクロールしないこともありますから、画像は適度な縦長などのものを選びます。

scrollview vertical 02 - [Android] ScrollView 画面の縦スクロール

 

コードで記述

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

 

one direct child

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

ScrollView can host only one direct child

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

実際に縦長画像と上下にテキスト、ボタンを置いたレイアウトをスクロールさせてみます。
先のレイアウトとは別ファイルとして記述すると
actiity_main2.xml

 
strings.xml

 
この場合レイアウトだけの記述なので
MainActivity.java

 

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

 
 
関連ページ:

 
Ref:
ScrollView | Android Developers

誤字脱字、意味不明で分からにゃイ、
などのご意見はこちらから mailフォーム

ブックマークしておくと便利です このエントリーをはてなブックマークに追加

 

アプリ開発が上達するお勧め

アプリ開発を始めたけどわからないところがあり、誰かに聞きたいけど周りにはそんな人はいない…あるいは、会社で働いていて日中そんなに時間をとれないなど、オンラインのプログラミングスクールがいいでしょう。

オンラインスクールは色々ありますが、以下の3つはAndroidが学習できる老舗スクールです。


TECH ACADEMY
Androidアプリコース


こういうものではアプリ作れないと言う意見もありますが、それは結局本人のやる気があるかないかです。やる気があっても独学では突破しにくいところは教えてもらうのが一番早い。


侍エンジニア塾
侍エンジニア塾 無料体験レッスン


とても簡単なことなのに本やネットの画像だけでは分かりにくいことはあります。実際に質問してピンポイントで教えてもらうと、なんだそんなこと、と言うのがけっこうあります。


CodeCamp
~約8,000名の受講生と80社以上の導入実績~
現役エンジニアのオンライン家庭教師CodeCamp




直接(ネットで)誰か分かる人に聞いた方が早く解決して、上達も早いと思います。


無料で転職まで
これはアプリ限定ではありませんが無料です
その代わり就職することを前提にしたスクールでエンジニアになって職を得たいのであれば手っ取り早いかもしれません




シェアする

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

フォローする