文章目录
- 1. 概念介绍
- 2. 使用方法
- 2.1 圆形进度条
- 2.2 长条形进度条
- 3. 示例代码
- 4. 内容总结
我们在上一章回中介绍了Kotlin中的lambda、匿名函数和闭包,本章回中主要介绍 进度条。闲话休提,让我们一起Talk Android Jetpack吧!
1. 概念介绍
进度条主要用来显示某项任务的进度,compose中的进度条分为圆形和长条形两种形状,这点和原来View中的ProgressBar
一样,不过compose
中将其分成了两个可组合函数,它们是LinearProgressIndicator
和CircularProgressIndicator
。我们在本章回中将详细介绍这两个组合函数的使用方法。
2. 使用方法
2.1 圆形进度条
圆形进度条通过CircularProgressIndicator
可以组合函数实现,它提供了相关的参数来控制自己,下面是常用的参数:
- color参数:主要用来控制进度条的颜色;
- progress参数:主要用来控制进度条的进度值;
除了这两个参数外,还可以使用modifier参数来控制进度条的大小。此外CircularProgressIndicator
函数是重载函数,一共有两个,其中的一个不带progress
参数,进度条无限循环滚动;另外一个带有progress参数,可以通过参数来控制进度值。大家在使用时区分一下就可以。
2.2 长条形进度条
长条形进度条通过LinearProgressIndicator
可以组合函数实现,它提供了相关的参数来控制自己,下面是常用的参数:
- color参数:主要用来控制进度条的颜色;
- progress参数:主要用来控制进度条的进度值;
- trackColor参数:主要用来控制进度条没有完成部分的颜色;
这三个参数中前两个参数和圆形进度条的相同,第三个参数是长条形进度条特有的。除了这三个参数外,还可以使用modifier参数来控制进度条的大小。
此外,LinearProgressIndicator
函数也是重载函数,一共有两个,其中的一个不带progress参数,进度条无限循环滚动;另外一个带有progress参数,可以通过参数来控制进度值,这点和圆形进度条的组合函数相同。
3. 示例代码
@Composable
fun ExProgress() {
Column(
verticalArrangement = Arrangement.SpaceAround,
horizontalAlignment = Alignment.CenterHorizontally,
modifier = Modifier
.fillMaxWidth()
.fillMaxHeight()
.padding(all = 16.dp)
) {
//进度条的大小通过modifier参数设置
//通过color参数设置进度条的颜色
CircularProgressIndicator(
modifier = Modifier.size(80.dp),
color = Color.Green
)
LinearProgressIndicator(
modifier = Modifier.width(200.dp).height(30.dp),
color = Color.Green,
trackColor = Color.Yellow
)
//可组合方法是重载方法,通过progress参数设置进度值
LinearProgressIndicator(progress = 0.3f)
CircularProgressIndicator(progress = 0.8f)
}
}
我们在上面的示例代码中演示了四个进度条,把进度条相关的重载函数都演示了。大家可以参考代码中的注释。此外,我们把进度条封装成了独立的函数,把它放到Activity中就可以直接运行,下面是程序的运行效果图。
4. 内容总结
最后,我们对本章回的内容做一个总结:
- 进度分为圆形和长条形两种形状,不同的形状使用不同的可组合函数来实现;
- 进度条的可组合函数是重载函数,只有参数和数量不同,可以依据项目需求来使用;
- 进度条的实现函数不同,但是这些函数的使用方法完全相同。
看官们,与Jetpack中进度条相关的内容就介绍到这里,欢迎大家在评论区交流与讨论!