Как установить цвет строки состояния, аналогичный TopAppBar, при использовании SafeDrawingPadding?Android

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Как установить цвет строки состояния, аналогичный TopAppBar, при использовании SafeDrawingPadding?

Сообщение Anonymous »

Я пытаюсь добавить интервал, когда на устройстве есть выемка, поэтому я заключаю свой контент в Scaffold с помощью SafeDrawingPadding() на нем.
Это создает пространство на вырезе, проблема в том, что пространство находится в то время, вместо этого я бы хотел, чтобы он имел тот же цвет TopAppBar.
Вот мой код:< /p>

Код: Выделить всё

@Composable
fun Theme(
darkTheme: Boolean = isSystemInDarkTheme(),
content: @Composable () -> Unit
) {
val colors = if (darkTheme) DarkColorPalette else LightColorPalette

MaterialTheme(
colors = colors,
typography = Typography,
content = content
)
}
Действие:

Код: Выделить всё

    class PaymentActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)

val tableNumber = intent.getStringExtra("tableNumber") ?: ""
enableEdgeToEdge(
statusBarStyle = SystemBarStyle.light(
resources.getColor(R.color.colorPrimary, theme),
resources.getColor(R.color.colorPrimary, theme)
)
)
setContent {
VisualPOSMobileTheme {
PaymentScreen(tableNumber = tableNumber,
onPaymentProceed = { amount, tipAmount ->
println("Proceed Payment: Total = $amount, Tip = $tipAmount")
},
onBackClick = { finish() })
}
}
}
}
Экран оплаты:

Код: Выделить всё

  Scaffold(
modifier = Modifier.safeDrawingPadding(),
topBar = {
TopAppBar(
title = {
Text(text = "Pagamento")
},
navigationIcon = {
IconButton(onClick = onBackClick) {
Icon(
painter = painterResource(R.drawable.ic_baseline_arrow_back_ios_new_24),
contentDescription = "Indietro"
)
}
},
backgroundColor = MaterialTheme.colors.primary,
contentColor = Color.White,
elevation = 4.dp
)
},
...
Я пытался установить цвет statusBar в EnableEdgeToEdge, но это не дало эффекта.
Вот как это происходит выглядит так:
Изображение

Итак, как мне установить цвет statusBar такой же, как у TopAppBar?

Подробнее здесь: https://stackoverflow.com/questions/792 ... ingpadding
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»