Modifier - Ki-Kobayashi/Android-Wiki GitHub Wiki
🟩 ModifierをComposableの引数として受け取り、基盤のModifierに渡した方がいい理由
※下記のようにすることを、Android公式が推奨している
@Composable
fun AffirmationCard(affirmation: Affirmation, modifier: Modifier = Modifier) {
// ⚠️modifierを渡すのは、基盤となるCardのみ。中身に配置するComposableには、Modifier.xxxを渡す。
Card(modifier = modifier) {
}
}
🟡理由
親の設定値(Modifier) を、部品側が引き継ぐことができ、再利用性が高まるから。
// 通常のAffirmationCard
AffirmationCard(affirmation = someAffirmation)
// 大きめのAffirmationCard
AffirmationCard(affirmation = someAffirmation, modifier = Modifier.size(200.dp))
// 赤い背景のAffirmationCard
AffirmationCard(affirmation = someAffirmation, modifier = Modifier.background(Color.Red))