のつづき
6. Favorite collection カード - マテリアル サーフェス
- テキストが titleMedium である
- このコンテナの背景色は、画面全体の背景とは異なる surfaceVariant を使用している
- 角が丸められている
UIの説明
- Favorite collectionカードには、マテリアルの
Surfaceコンポーザブルを使用して、カードの背景と形状を設定 -
FavoriteCollectionCardコンポーザブルを作成する- 引数に
modifier: Modifier = Modifierを渡す - ラムダ本文に
Surfaceコンポーザブルを呼び出す- 引数として
shape = MaterialTheme.shapes.mediumとmodifier = modifierを渡す - shape: カードの角の丸みを MaterialTheme.shapes.medium で指定
- 引数として
-
Surfaceコンポーザブルのラムダ本文でRowコンポーザブルをラップする-
RowコンポーザブルでImageとTextコンポーザブルをラップする -
Rowの引数にverticalAlignment = Alignment.CenterVerticallyとModifier.width(255.dp)を渡す-
ImageコンポーザブルではpainterとcontentDescriptionを引数として渡す- さらに
contentScale = ContentScale.Cropを使用して画像はアスペクト比を維持したまま、表示領域内に収まるようにリサイズされる modifier = Modifier.size(80.dp)でサイズを調整
- さらに
-
Textコンポーザブルでは引数textに表示したい文字列リソースを渡す
-
-
- 引数に
7. Align your body の行 - 配置
UIの説明
-
@Composableを付けて、AlignYourBodyRowコンポーザブルを作成する -
引数には
modifier: Modifier = Modifierを渡す- ラムダ本文で
LazyRowをラップする-
LazyRowのhorizontalArrangement引数にArrangement.spacedBy(8.dp)を渡す -
LazyRowのラムダ本文でitemsメソッドを使用して要素を配置する
-
- ラムダ本文で
-
itemsは、Jetpack ComposeのLazyRowやLazyColumnなどのLazyコンポーネント内で使用される関数
-
リストや配列のようなデータの集合を
itemsの引数として受け取り、データの集合の各要素に対して、指定されたコンポーザブル関数をitem ->の後に呼び出して、画面上に表示する
