HarmonyOS 鸿蒙Next页面开发指导:多级tab与海报联动&循环
HarmonyOS 鸿蒙Next页面开发指导:多级tab与海报联动&循环
类似极氪的车辆海报这样
1、两层tab,分表表示一分类和二级分类
2、二级分类可能有多张海报
3、海报滑动会联动tab变化
4、海报能够收尾循环,即在009的最后一张滑动后,会回到001分类下的All New 001的第一张
5、二级分类下再有多张海报呢
目前感觉有几个问题需要解决: 1、自定义分类tab的问题,内置组件好像没有符合的。
2、海报的循环问题,交互有点像多个swiper之间循环,举例说就是001的海报swiper滑完就这是001FR的海报swiper。
希望论坛的大佬们给点思路和建议,谢谢各位。
8 回复
其实把,按照官网的组件是可以实现的,要是不想完全用官网的组件或者直接不用的话也可以自己写,因为你给的这个案例并没有涉及到左右超出的问题,那么就简单了,自己写的话思路如下:横向排列几个text标签,然后state定义动态变量,给每一个text加点击事件,每一次点击就改变num的值,可以再通过扩展样式Extend传参来实现切换效果,这样每次切换就会得到不同的动态变量.......,然后页面做if操作,对于滑到最后之后再回到第一个也可以照类似的操作实现,顺便watch一下变量,实现思路就类似于原生js或者vue里面自己封装的组件那样,不过我这样说可能更麻烦了...哈哈哈哈哈 那么就tabs底部保留,然后上面的一二级采用自定义组件的写法吧
感谢回复
楼主您好,tabs+swiper组件的方式实现。
这个组合有个问题,期望的tabs应该是浮在content上且完全透明,但是系统的tabs组件似乎没有办法,看了API,有个barOverlap属性似乎可以,找时间先验证这个组合
最简单的方式就是两个tab+一个swiper,通过controller去控制
先写demo验证看看
看到过高频例子中🈶提及2级联动的,可以查看一下例子照着做,2级联动下再嵌套一个swiper应该可以实现上面需求吧。
在HarmonyOS鸿蒙系统中进行Next页面开发时,实现多级tab与海报的联动及循环效果,需要充分利用ArkUI框架提供的组件和API。以下是一个简要的开发指导:
-
多级Tab设置:
- 使用
tabs
组件来创建多级Tab。 - 通过
tabs-item
来定义每个Tab项,并为每个Tab项绑定相应的页面或组件。 - 可以通过设置
tab-bar
属性来定制Tab栏的样式。
- 使用
-
海报联动:
- 在每个Tab页中,使用
swiper
组件来实现海报的滑动效果。 - 监听
swiper
的滑动事件,通过事件回调更新其他Tab页中的海报显示。 - 可以使用
list
组件来展示海报列表,并通过数据绑定实现动态更新。
- 在每个Tab页中,使用
-
循环效果:
- 在
swiper
组件中,通过设置loop
属性为true
来实现海报的循环滑动。 - 确保海报数据列表是循环的,即首尾相连,以实现无缝循环效果。
- 在
-
注意事项:
- 确保页面布局合理,避免Tab和海报的相互遮挡。
- 优化性能,特别是在处理大量海报数据时,要注意内存和CPU的使用。
如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html。