gpt4 book ai didi

android - jetpack 中的 TopAppBar 在没有脚手架的情况下撰写时出现错误

转载 作者:行者123 更新时间:2023-12-03 08:03:48 26 4
gpt4 key购买 nike

TopAppBar(title = { Text(text = "Notes") },actions = {Icon(imageVector =Icons.Default.Notifications,contentDescription = "Notif",)},) {}

当我尝试运行上述代码时,出现以下错误“无法使用提供的参数调用以下函数。”当我查看 TopAppBar 的声明时,有两个同名的可组合项,但只有我想要的可组合项不能使用!有什么建议吗?

最佳答案

发生这种情况是因为没有与您提供的参数匹配的函数。由于函数重载,可能有多个参数略有不同的函数。避免歧义的最佳方法是使用命名参数。

@Composable
fun TopAppBar(
title: @Composable () -> Unit,
modifier: Modifier = Modifier,
navigationIcon: @Composable (() -> Unit)? = null,
actions: @Composable RowScope.() -> Unit = {},
backgroundColor: Color = MaterialTheme.colors.primarySurface,
contentColor: Color = contentColorFor(backgroundColor),
elevation: Dp = AppBarDefaults.TopAppBarElevation
)

最接近您的在上面,可以设置为

TopAppBar(
title = { Text(text = "Notes") },
actions = {
Icon(
imageVector = Icons.Default.Notifications,
contentDescription = "Notif",
)
}
)

或者你可以使用这个

@Composable
fun TopAppBar(
modifier: Modifier = Modifier,
backgroundColor: Color = MaterialTheme.colors.primarySurface,
contentColor: Color = contentColorFor(backgroundColor),
elevation: Dp = AppBarDefaults.TopAppBarElevation,
contentPadding: PaddingValues = AppBarDefaults.ContentPadding,
content: @Composable RowScope.() -> Unit
)

比如

TopAppBar(
// other params
) {
Row(modifier = Modifier.fillMaxWidth()) {
Text(text = "Notes")
Spacer(modifier = Modifier.weight(1f))
Icon(
imageVector = Icons.Default.Notifications,
contentDescription = "Notif"
)
}
}

关于android - jetpack 中的 TopAppBar 在没有脚手架的情况下撰写时出现错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73117658/

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