相关问题
@State与@Link的双向绑定,和@Provide与@Comsume的双向绑定的区别是什么?
984浏览 • 2回复 待解决
HarmonyOS $$双向绑定问题
747浏览 • 1回复 待解决
HarmonyOS 侧滑返回事件拦截与绑定
1788浏览 • 1回复 待解决
HarmonyOS 无法使用$$双向绑定
1480浏览 • 1回复 待解决
HarmonyOS TextInput双向绑定无效
313浏览 • 1回复 待解决
HarmonyOS如何实现双向数据绑定
1104浏览 • 1回复 待解决
ArkTS简单类型变量双向数据绑定
2228浏览 • 1回复 待解决
HarmonyOS 关于Progress组件的value双向绑定问题
543浏览 • 1回复 待解决
父子组件之间如何建立双向的数据绑定?
1164浏览 • 2回复 待解决
#鸿蒙通关秘籍#如何在ArkTS中实现子组件通过@Link实现与父组件的双向数据绑定?
607浏览 • 1回复 待解决
List滚动时,右侧有首字母导航一起滚动,点击右侧导航某个字母,ListItemGroup能否设置偏移量
886浏览 • 1回复 待解决
有用户表与权限表,还有材料表,画ER图的问题,材料表与用户表是一对多还是一对一?
2387浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何双向绑定TabBar组件和Tab组件的数据?
509浏览 • 1回复 待解决
获取状态栏与导航栏高度
1167浏览 • 1回复 待解决
HarmonyOS Tabs组件的Tab栏滚动问题
1005浏览 • 1回复 待解决
如何在HarmonyOS中实现自定义双向数据绑定机制?
418浏览 • 0回复 待解决
HarmonyOS TextArea在onDidDelete中改变值时,双向绑定不起作用
269浏览 • 1回复 待解决
HarmonyOS ListItem的侧滑栏如何主动关闭?
495浏览 • 1回复 待解决
HarmonyOS 有没有办法让一个@Link双向绑定的变量,同时支持不与父组件绑定,而是手动赋值
553浏览 • 0回复 待解决
父组件与子组件使用@Link双向同步
1676浏览 • 1回复 待解决
鸿蒙如何获取与设备绑定的设备ID?
1476浏览 • 1回复 待解决
将Text中的大写字母转为小写字母的方法。
519浏览 • 1回复 待解决
如何获取状态栏与导航栏高度?
846浏览 • 0回复 待解决
HarmonyOS HSP包中Slider组件使用$$双向绑定数据编译时报错
550浏览 • 1回复 待解决
HarmonyOS 组件外定义的class如何合内部UI做双向绑定,以及interface的用法?
832浏览 • 1回复 待解决
构建一个侧边导航的列表页,实现列表与导航的双向绑定效果:左侧列表滑动,右侧导航栏自动定位;点击右侧导航栏,左侧列表自动定位。
下面,我们利用List组件和AlphabetIndexer组件来实现一个联系人列表的效果。
左侧红框内使用List组件,右侧红框内使用AlphabetIndexer组件。
使用
1. 创建一个新的page页面。
2. 构建页面中联系人的数据。
3. 定义一个联系人类,每一个联系人类中包含一个序号和一个姓名组。页面中联系人的数据使用联系人对象数组来实现。
4.构建导航栏的数据。
5.构建左侧联系人列表。
定义flag变量,使用@State修饰,当flag变量发生变化时,能触发页面刷新。
通过List组件的onScrollIndex滚动事件,当List发生滚动时,flag变量能接收当前页面位置的索引值。
6.构建右侧导航栏。
AlphabetIndexer组件的selected参数使用之前定义的flag变量,可以实现当flag变量发生变化时,导航栏定位到对应索引的位置。
通过AlphabetIndexer组件的onSelect选择事件,当导航栏被点击时,使用list组件绑定的scroller的scrollToIndex方法,让list滚动到指定的索引位置。
说明:List组件与AlphabetIndexer组件中是根据索引值来定位,也就是元素在数组的中的位置值,与元素本身的值没有关系。
全量代码: