使用Jetpack Compose创建一个安卓开关
设计可组合的UI
[
卡迈勒迪普-库马尔
](kamaldeepkakkar.medium.com/?source=pos…)
[
2小时前-2
](betterprogramming.pub/create-an-a…
照片:Isabella and Zsa FischeronUnsplash
在上一篇教程中,我们讨论了创建自定义Jetpack Compose芯片。在这篇文章中,我们将讨论如何在Jetpack Compose中创建一个开关。
基本上,当我们需要一个双状态的选项时,如开/关,就会用到开关。
首先,我们将在Compose中创建一个默认的开关,如下所示
上面的开关包含两个参数。
1.checked: 组件被检查或不被检查
2.onCheckedChange: 它是一个回调,每当用户点击开关时,它就会被调用。
轨道和拇指
如果我们想改变轨道和拇指的颜色,那么我们需要添加第三个参数 (colors: SwitchColors)
在上面的代码中,我们添加了颜色参数,该参数接收SwitchDefaults 类型的对象。我们已经为选中和未选中的状态定制了拇指和轨道的颜色。
如果你注意到上面的图片,Track 的颜色不是全蓝色的,尽管我们已经给出了适当的蓝色。等等......这里似乎发生了什么。
在SwitchDefaults.colors ,它得到了这两个参数的默认值checkedTrackAlpha 和 uncheckedTrackAlpha
checkedTrackAlpha: Float = 0.54f,uncheckedTrackAlpha: Float = 0.38f,
所以我们也可以在SwitchDefaults.colors ,如果我们想给轨道显示全蓝的颜色,可以把这两个参数作为参数传给它。
有时,我们需要显示一个开关来显示信息,而用户又不能对它采取行动,因此,我们也可以通过添加一个参数来简单地禁用这个开关。(enabled=false)
是的......这就完成了!就像这样。谢谢你的阅读。