赞
踩
本示例介绍使用ArkUIstack
组件实现多层级轮播图。该场景多用于购物、资讯类应用。
使用说明
1.通过stack和offsetx实现多层级堆叠。源码参考SwiperComponent.ets
Stack() {
LazyForEach(this.swiperDataSource, (item: SwiperData, index: number) => {
Stack({ alignContent: Alignment.BottomStart }) {
Image(item.imageSrc)
.objectFit(ImageFit.Auto)
.width('100%')
.height('100%')
.borderRadius($r('app.string.main_page_top_borderRadius'))
...
3.通过手势控制调用显式动画同时修改数据中间值currentIndex来修改组件zIndex提示组件层级实现动画切换效果。源码参考SwiperComponent.ets
Stack() { ForEach(this.swiperDataSource, (item: SwiperData, index: number) => { Stack({ alignContent: Alignment.BottomStart }) { Image(item.imageSrc) .objectFit(ImageFit.Auto) .width('100%') .height('100%') .borderRadius($r('app.string.swipercomponent_main_page_top_borderRadius')) // 轮播图底部蒙层 Stack() { Column() { } .width('100%') .height('100%') .backgroundColor(Color.Black) .opacity(0.3) .borderRadius({ topLeft: 0, topRight: 0, bottomLeft: $r('app.string.swipercomponent_main_page_top_borderRadius'), bottomRight: $r('app.string.swipercomponent_main_page_top_borderRadius') }) Text(item.name) .width('100%') .height('100%') .fontSize(16) .fontColor(Color.White) .textAlign(TextAlign.Start) .padding($r('app.string.swipercomponent_main_page_padding5')) } .height('17%') } .gesture( PanGesture({ direction: PanDirection.Horizontal }) .onActionStart((event: GestureEvent) => { this.startAnimation(event.offsetX < 0); }) ) startAnimation(isLeft: boolean): void { animateTo({ duration: 300, }, () => { let dataLength: number = this.swiperData.length; let tempIndex: number = isLeft ? this.currentIndex + 1 : this.currentIndex - 1 + dataLength; this.currentIndex = tempIndex % dataLength; }) }
不涉及
functionalscenes // har类型
|---model
| |---SwiperData.ets // 轮播数据模型和数据控制器
|---mainpage
| |---FunctionalScenes.ets // 轮播页面
不涉及
1.lazyForeach参考文档
2.animationTo参考文档
也为了积极培养鸿蒙生态人才,让大家都能学习到鸿蒙开发最新的技术,针对一些在职人员、0基础小白、应届生/计算机专业、鸿蒙爱好者等人群,整理了一套纯血版鸿蒙(HarmonyOS Next)全栈开发技术的学习路线【包含了大APP实战项目开发】。
gitee.com/MNxiaona/733GH
https://gitee.com/MNxiaona/733GH
1.基本概念
2.构建第一个ArkTS应用
3.……
gitee.com/MNxiaona/733GH
1.应用基础知识
2.配置文件
3.应用数据管理
4.应用安全管理
5.应用隐私保护
6.三方应用调用管控机制
7.资源分类与访问
8.学习ArkTS语言
9.……
1.Ability开发
2.UI开发
3.公共事件与通知
4.窗口管理
5.媒体
6.安全
7.网络与链接
8.电话服务
9.数据管理
10.后台任务(Background Task)管理
11.设备管理
12.设备使用信息统计
13.DFX
14.国际化开发
15.折叠屏系列
16.……
gitee.com/MNxiaona/733GH
gitee.com/MNxiaona/733GH
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。