【发布时间】:2021-12-05 14:52:02
【问题描述】:
我试图添加TopAppBar。当我尝试添加以下代码时,我得到了
@composable 调用只能在 @composable 函数** 错误的上下文中发生。
@Composable
fun appTopBar(name: String) {
val scaffoldState = rememberScaffoldState(rememberDrawerState(DrawerValue.Closed))
Scaffold(
scaffoldState = scaffoldState,
topBar = {
TopAppBar(
title = { Text(text = name) },
backgroundColor = MaterialTheme.colors.primary
) {
}
}, content = {
})
}
但是当我尝试删除TopAppBar 的最后一个{} 时,错误已解决。像下面的代码。
@Composable
fun appTopBar(name: String) {
val scaffoldState = rememberScaffoldState(rememberDrawerState(DrawerValue.Closed))
Scaffold(
scaffoldState = scaffoldState,
topBar = {
TopAppBar(
title = { Text(text = name) },
backgroundColor = MaterialTheme.colors.primary
)
}, content = {
})
}
我的问题是TopAppBar(){} 和TopAppBar() 有什么区别。 {} 由 Android Studio 自动生成。
【问题讨论】:
标签: kotlin android-jetpack-compose