Jetpack Compose学习 Scaffold

Jetpack Compose学习 -------- Scaffold

Scaffold 基本使用

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56

@Composable
fun ScaffoldDemo() {
val materialBlue700 = Color(0xFF1976D2)
//设置抽屉的打开状态
val scaffoldState = rememberScaffoldState(
rememberDrawerState(initialValue = DrawerValue.Closed)
)
val scope = rememberCoroutineScope()
Scaffold(
scaffoldState = scaffoldState,
//顶部导航栏
topBar = {
TopAppBar(
title = {
Text(text = "标题")
},
backgroundColor = materialBlue700,
)
},
//悬浮按钮
floatingActionButton = {
FloatingActionButton(onClick = {
scope.launch {
if (scaffoldState.drawerState.isClosed) {
scaffoldState.drawerState.open()
} else {
scaffoldState.drawerState.close()
}
}
}) {
Text("X")
}
},
//悬浮按钮的位置
floatingActionButtonPosition = FabPosition.End,
//抽屉内容
drawerContent = {
Text(text = "drawerContent")
},
//内容
content = {
Text("BodyContent")
},
//底部导航栏
bottomBar = {
BottomAppBar(
backgroundColor = materialBlue700
) {
Text(text = "BottomAppBar")
}
}
)
}