当前位置: 首页 > news >正文

长沙网站建设制作修改自豪地采用wordpress

长沙网站建设制作,修改自豪地采用wordpress,网站开发主要参考文献,搭建网站教学创意背景 在安卓 View 传统命令式开发里面提供了非常多稳定美观体验好的组件,但是目前Compose还未有可用的组件,比如View中可以使用 coordinatorlayout 的滚动效果可以实现局部(即使内容不满一屏也可以触发滚动边界阻尼效果)&…

创意背景

在安卓 View 传统命令式开发里面提供了非常多稳定美观体验好的组件,但是目前Compose还未有可用的组件,比如View中可以使用 coordinatorlayout 的滚动效果可以实现局部(即使内容不满一屏也可以触发滚动边界阻尼效果),为了最小成本实现相同的效果,我们可以利用Column的滚动边界为基础间接实现类似效果。

在这里插入图片描述

代码和过程:

package lcppx.import androidx.compose.foundation.ScrollState
import androidx.compose.foundation.background
import androidx.compose.foundation.gestures.FlingBehavior
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.BoxWithConstraints
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.ColumnScope
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.height
import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.verticalScroll
import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.runtime.derivedStateOf
import androidx.compose.runtime.getValue
import androidx.compose.runtime.remember
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.platform.LocalDensity
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp// 默认垂直滚动的竖直布局,在元素不满屏幕的时候,也可以滚动边界动画
// 原理就是不满屏幕的时候,多加0.5px,就可以触发滚动边界动画
@Composable
fun ColumnScrollV(modifier: Modifier = Modifier,// 垂直滚动参数配置state: ScrollState = rememberScrollState(),enabled: Boolean = true,flingBehavior: FlingBehavior? = null,reverseScrolling: Boolean = false,// 内容content: @Composable() (ColumnScope.() -> Unit),
) {state.maxValueval isNotFull by remember { derivedStateOf { !state.canScrollForward && !state.canScrollBackward } }//println("ColumnScrollV滚动是否满屏测试:$isNotFull")BoxWithConstraints(modifier = modifier) {val maxH by remember { derivedStateOf { maxHeight } }// 如果不是满屏,就多加一个0.5像素,触发边界动画Column(modifier = Modifier.fillMaxWidth().height(maxHeight)// 设置垂直滚动,如果不满屏幕,内外两个列表都使用同一个滚动状态,确保一起滚动// 如果满屏,就使用两个不同的滚动状态,确保两个列表可以分开滚动(其实如果内部满屏可以滚动,就会屏蔽外部的滚动,所以此处只有设置不一样的状态即可).verticalScroll(if (isNotFull)state else rememberScrollState()),) {//val etr = 0.142.dpval etrPx = 0.51f// 触发边缘滚动的阈值是0.5像素,稍微大一些val etr = with(LocalDensity.current) { etrPx.toDp() }//println("当前px值测试:$etrPx")Column(modifier = Modifier.fillMaxWidth().height(maxH).verticalScroll(state)// 设置垂直滚动//.background(Color.Magenta),) {content()}//content()Box(modifier = Modifier.fillMaxWidth().height(etr)//.background(Color.Blue))}}
}/
// 预览测试
@Preview
@Composable
private fun ColumnScrollVPreview() {ColumnScrollV(content = {Column(modifier = Modifier.fillMaxWidth().height(50.dp).background(Color.Red)) {Text(text = "1")Text(text = "2")Text(text = "3")}Column(modifier = Modifier.fillMaxWidth().height(50.dp).background(Color.Yellow)) {Text(text = "1")Text(text = "2")}},)
}
http://www.yayakq.cn/news/135904/

相关文章:

  • 如何把网站建设好中国100强排名企业名单
  • 网站建设准备蚂蚁建站
  • 政务网站建设发言材料北京网站建设设计公司
  • 威海企业做网站品品牌牌建建设设网站
  • 为什么很少用python做网站wordpress备案信息代码
  • 免费做图片的网站wordpress移除谷歌字体
  • 推销网站建设彩页印刷
  • 焦作公司做网站深圳宝安区哪里好玩
  • 网站后台 网页编辑器可以申请做cpa广告的网站
  • 天津手机版建站系统哪个好过年做哪些网站能致富
  • 网站设计一般用什么软件北京app制作公司
  • 教人做家务的网站定制化网站开发报价
  • 烟台理工学校网站wordpress ssl部署
  • 网站建设分金手指排名十一建设工程 法律 网站
  • 网站开发公司职位seo的全称是什么
  • 手机怎样建立网站松江佘山网站建设
  • 建设工程教育网站论坛dede网站404怎么做
  • 网站开发多少钱一天是珠海市规划建设局网站
  • 广西免费网站制作久久信息网
  • 手机怎么开网站wordpress私密文章权限设置
  • 旅游海外推广网站建设方案博客社区类网站模板
  • 知道网站域名怎么联系宁波网站制作设计
  • 网站开发人员选项网站建设与管理课程标准
  • 国外手做网站泗洪网页定制
  • 织梦的网站地图更新做网站就
  • 天津 建设执业资格注册中心网站wordpress干啥的
  • 站长之家网站介绍义乌市住房和城乡建设局网站
  • 排名好的青岛网站建设在线小游戏网页版
  • 用6数字域名做网站的是网站建设背景
  • 个人建设网站服务器怎么解决哈尔滨房产信息网官方网站