我们在本章回中介绍的脚手架是指程序的框架,准确的说是指程序中某个页面的框架,它提供了页面的标题栏,页面主体和页面底部导航栏,这些都是一个页面的主要内容,在Jetpack库中,通过可组合函数Scaffold
来实现脚手架。本章回中将详细介绍该函数的使用方法。
可组合函数Scaffold
可以看作是一种布局,它在布局中提供了槽位,这些槽位用来存放页面中主要的内容,比如标题栏。槽位在布局中的位置则由脚手架控制,开发人员不需要关于槽位的具体位置和布局,只需要把与槽位相关的内容添加到槽位就可以。
可组合函数Scaffold提供了相关的参数,这些参数可以当作槽位,开发人员给这些参数赋值相当于在槽位中添加内容,下面我们将介绍该函数中常用的参数:
上面介绍的这些函数中除了floatingActionButtonPosition
参数外,其它的参数都是可组合函数类型(@Composable () -> Unit = {}),
脚手架就是通过这些可组合函数实现槽位的。
此外,content参数比较特殊,它是Scaffold函数的最后一个参数,按照尾lambda的语法,可以把该参数的内容移动到函数体内,因此我们可以在Scaffold
函数体内添加页面主体的内容。
Scaffold(
topBar = { customCenterAppBar()},
bottomBar = { customBottomBar() },
//控制FAB的位置,只有两种
floatingActionButtonPosition = FabPosition.End,
) {innerPadding->
Column(modifier = Modifier
.padding(innerPadding)
.fillMaxSize()
.background(color = CusColor)
) {
Text(text = "hello")
}
}
上面的示例代码中演示了Scaffold函数的参数以主这些函数对应的组合函数,不过我们没有列出各个组合函数的细节,因为我们在前面章回中介绍过这些组合函数,大家可以查看前面章回中的内容。
上面的示例代码中,我们在Scaffold
函数体内添加了页面的主体部分,不过该主体比较简单,只有一个文本,下面是程序的运行效果图
最后,我们对本章回的内容做一个总结:
看官们,关于Jetpack中脚手架相关的内容就介绍到这里,欢迎大家在评论区交流与讨论!