Surface 位于 androidx.compose.material 包中,很显然它是 Material Design 风格的,可以将它理解为一个容器,我们可以设置容器的高度(带阴影效果)、Shape形状、Background背景等。举个栗子说明会更直观: // code 4 @Composable fun SurfaceShow() { Surface( shape = RoundedCornerShape(6.dp), border = BorderStro...
另外,Compose的动画功能高度依赖Compose的State概念,如果你还不了解Compose State的话,请先去阅读写给初学者的Jetpack Compose教程,使用State让界面动起来。 / AnimatedVisibility / AnimatedVisibility应该是整个Compose动画体系里最简单的一个函数了,那么我们就从它开...
.align(Alignment.CenterVertically) // 设置里面的子元素竖直方向上居中分布 ) { val user = ActiveUser.current // 通过 current 方法取出当前值 Text(user.name, fontWeight = FontWeight.Bold) CompositionLocalProvider(LocalContentAlpha provides ContentAlpha.medium) { Text(user.lastActiveTime, style = Mate...
CompositionLocal 类位于 androidx.compose.runtime 包下,总的来说是用于在 composition 树中共享变量的值。在 Compose 构建的 composition 树中,如果需要将顶层的 Composable 函数中的某个变量传递到最底层的 Composable 函数,通常最简单有效的方法就是:1)定义一个全局变量,通过全局变量传值;2)中间层的 Composable ...
(start = 8.dp) // 单独设置 左边距.align(Alignment.CenterVertically) // 设置里面的子元素竖直方向上居中分布) {val user = ActiveUser.current // 通过 current 方法取出当前值Text(user.name, fontWeight = FontWeight.Bold)CompositionLocalProvider(LocalContentAlpha provides ContentAlpha.medium) {Text(...
verticalAlignment,指定垂直方向的对齐方式,有Top、CenterVertically,Bottom三种,默认Top。 3. Box box就像盒子一样,里面的东西可以层层摆放。大体相当于FrameLayout。 @Composable inline fun Box( modifier: Modifier = Modifier, contentAlignment: Alignment = Alignment.TopStart, ...
Compose 使用全新的组件——可组合项 (Composable)(https://developer.android.google.cn/jetpack/compose/mental-model#simple-example)来布局界面,使用修饰符 (Modifier)(https://developer.android.google.cn/jetpack/compose/modifiers) 来配置可组合项。
(start=8.dp)// 单独设置 左边距.align(Alignment.CenterVertically)// 设置里面的子元素竖直方向上居中分布){valuser=ActiveUser.current// 通过 current 方法取出当前值Text(user.name,fontWeight=FontWeight.Bold)CompositionLocalProvider(LocalContentAlphaprovidesContentAlpha.medium){Text(user.lastActiveTime,style...
Jetpack Compose是用于构建原生 Android 界面的新工具包。它可简化并加快 Android 上的界面开发,使用更少的代码、强大的工具和直观的 Kotlin API,快速让应用生动而精彩。Compose 使用全新的组件——可组合项 (Composable)来布局界面,使用修饰符 (Modifier)来配置可组合项。
modifier=Modifier//设置图片和文字直接的间距.padding(start = 8.dp)//文字内容垂直居中.align(Alignment.CenterVertically) ) { Text("Android #$index", fontWeight =FontWeight.Bold)//LocalContentAlpha定义孩子View的透明度CompositionLocalProvider(LocalContentAlpha provides ContentAlpha.medium) { ...