有没有人能告诉我如何改变这个白色背景的应用程序?在Surface上设置颜色或背景色没有任何影响。我已经为Scaffold中的内容设置了青色背景,只是为了调试这个问题。
class MainActivity : ComponentActivity() {
...
setContent {
ChakkarTheme {
Surface(
color = Color.Red, modifier = Modifier
.fillMaxSize()
.background(Color.DarkGray)
) {
ChakkarApp()
}
...
@Composable
fun ChakkarApp() {
Scaffold(
topBar = { TopAppBar(title = { Text(appTitle) }, navigationIcon = navigationIcon) },
floatingActionButtonPosition = FabPosition.End,
floatingActionButton = {
if (showFab) {
FloatingActionButton(onClick = { /*TODO*/ }) {
Icon(imageVector = Icons.Filled.Add, contentDescription = null)
}
}
},
bottomBar = {
BottomNavigation() {
val navBackStackEntry by navController.currentBackStackEntryAsState()
val currentDestination = navBackStackEntry?.destination
bottomNavItems.forEach { screen ->
BottomNavigationItem(
icon = { Icon(imageVector = screen.icon, contentDescription = null) },
label = { Text(stringResource(id = screen.resourceId)) },
selected = currentDestination?.hierarchy?.any { it.route == screen.route } == true,
onClick = {
navController.navigate(screen.route) {
popUpTo(navController.graph.findStartDestination().id) {
saveState = true
}
launchSingleTop = true
restoreState = true
}
}
)
}
}
}
) { paddingValues ->
Column(
modifier = Modifier
.verticalScroll(rememberScrollState())
.background(Color.Cyan)
.padding(paddingValues)
.padding(16.dp)
) {
NavHost(
navController = navController,
startDestination = Screen.Running.route
) {
...
谢谢你的帮助!
4条答案
按热度按时间yhived7q1#
Scaffold
的默认背景色为MaterialTheme.colors.background
。可以指定自定义值:
0aydgbwb2#
你可以尝试在你的
Scaffold
中添加modifier = Modifier.fillMaxSize().background(color = Color.Black)
或backgroundColor = Color.Black
吗?+**编辑:**add
Modifier
不工作。尝试在Scaffold
中添加backgroundColor
。像这样:
7rtdyuoh3#
从下面的代码片段设置完整的背景颜色
Modifier.fillMaxSize()
它给出了一个完整的高度和宽度。Modifier.background(Color.Grey)
通过使用background可以设置背景颜色。0dxa2lsx4#
你可以根据这个代码修改它,这是新的。
这是旧的。