🐙

Googleが公開しているAndroid開発トレーニング(初心者向け)をやってみた - Unit1

2024/12/24に公開

背景

次の案件がAndroidアプリの開発(Kotolin + Jetpack Compose)になるため事前にキャッチアップしておきたかった。

チュートリアル(Unit1):
https://developer.android.com/courses/android-basics-compose/unit-1?hl=ja

学習メモ

概要

onCreate():エントリポイント、初期設定など
setContent():UIを設定、構築する関数
@Composable:コンポーズ可能関数に付与するアノテーション、setContent()で使用するUIの部品
@Preview:作成したUIをAndroid Studioのプレビュー画面で確認するために必要なアノテーション
Modifier:UI の「見た目」や「配置」をカスタマイズする

標準的なレイアウトはColumn、Row、Boxの3種類ある

リソースファイルを活用することで定数化が簡単にできる

Scaffoldは、アプリでよく使われるUI要素をレイアウトするための定型的な構造を管理できるコンポーズ可能関数
Scaffoldのmodifierに設定されるinnerPaddingは、TopBarやBottomBarに重ならないように調整されたpaddingの値が入っている

innerPaddingイメージ
|-----------------------------|
|          TopBar            | ← innerPadding.calculateTopPadding()
|-----------------------------|
|                             |
|      子要素 (Content)       |
|                             |
|-----------------------------|
|         BottomBar          | ← innerPadding.calculateBottomPadding()
|-----------------------------|

Modifierのプロパティ

fillMaxSize:親要素の利用可能な最大幅と最大高さを占有するようにする
weight:画面をスペースを分割するための仕組み
Spacer:空白を設ける
Alignment:親要素に対しての配置指定
Arrangement:ColumnやRowの要素の配置指定(以下図)

おまけ

最後の名刺アプリはこんな感じで作れました

Discussion