Alterando a cor da barra de status no Jetpack Compose
Cada problema resolvido é uma lição aprendida. #AndroidTips #ResolvidoProblemaHoje
Alterar a cor da barra de status é uma tarefa comum ao projetar aplicativos Android. Com o Jetpack Compose, é um processo simples que pode ser feito em apenas algumas linhas de código.

Para alterar a cor da barra de status no Jetpack Compose, podemos usar o SystemUiController
fornecido pelo androidx.compose.ui.platform
pacote.
Primeiro, precisamos do accompanist-systemuicontroller. Adicione a dependência ao arquivo build.gradle do seu aplicativo:
dependencies {
implementation "com.google.accompanist:accompanist-systemuicontroller:x.y.z"
}
Precisamos criar uma função combinável que definirá a cor da barra de status (crie a classe SetStatusBarColor.kt ). Aqui está um exemplo:
@Composable
fun SetStatusBarColor(color: Color) {
val systemUiController = rememberSystemUiController()
SideEffect {
systemUiController.setSystemBarsColor(color)
}
}
Em seguida, podemos chamar essa função em nossa @Composable
função principal em MainActivity , assim:
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
YourAppNameTheme {
StatusBarColor(color = MaterialTheme.colors.primary)
// Other content here, example :
Surface(modifier = Modifier.fillMaxSize(), color = MaterialTheme.colors.background) {
YourAppClass()
}
}
}
}
}
E é isso! Com apenas algumas linhas de código, podemos alterar facilmente a cor da barra de status em nosso aplicativo Android baseado no Jetpack Compose.
O uso SystemUiController
não se limita apenas a alterar a cor da barra de status, mas também pode ser usado para outras configurações de IU do sistema, como a barra de navegação, o modo imersivo e muito mais.
Eu tenho o aplicativo sampel usando o jetpack compose em meu repositório github.com/im-o .
Feito e polvilhado, obrigado!