gpt4 book ai didi

android - Jetpack Compose,如何在 Scaffold 中的 .showSnackbar() 中更改 snackbar Action 的颜色?

转载 作者:行者123 更新时间:2023-12-04 23:53:28 28 4
gpt4 key购买 nike

所以,我使用 scaffoldState.snackbarHostState.showSnackbar() 方法在我的 Scaffold 中显示一个 snackbar ,尽管“撤消”操作的颜色是深紫色,我会喜欢把它改成别的东西。

我知道我可以将它显示为自定义组件,但我想在 coroutineScope() 中启动它,我认为这是不可能的。

我的 snackbar 代码是这样的。

scope.launch {
val result = scaffoldState.snackbarHostState.showSnackbar(
message = "Note Deleted",
actionLabel = "Undo",
)
if (result == SnackbarResult.ActionPerformed) {
viewModel.onEvent(NotesEvent.RestoreNote)
}
}

我想知道是否可以在此处更改操作的文本颜色,如果可以,如果您能提供示例或资源,那就太好了。

谢谢!

最佳答案

您可以使用 actionColor 参数自定义您的 Snackbar

类似:

val scaffoldState = rememberScaffoldState()
Scaffold(
scaffoldState = scaffoldState,
snackbarHost = {
// reuse default SnackbarHost to have default animation and timing handling
SnackbarHost(it) { data ->
// custom snackbar with the custom colors
Snackbar(
actionColor = Green,
//contentColor = ...,
snackbarData = data
)
}
},

那就用吧:

scope.launch {
scaffoldState.snackbarHostState.showSnackbar(
message = "Note Deleted",
actionLabel = "Undo"
)
}

enter image description here

关于android - Jetpack Compose,如何在 Scaffold 中的 .showSnackbar() 中更改 snackbar Action 的颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69734835/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com