ArkUI(TS)声明式开发:列表字母索引导航 原创 精华
中软小助手
发布于 2022-4-7 10:08
浏览
3收藏
作者:梁青松
前言
前段时间SDK版本更新了,看了更新介绍,ArkUI(TS)主要是新增了文本输入组件。更新版本后研究一下,发现有些组件也有所更新和优化。所以就想写这个项目。
项目说明
本项目界面搭建基于ArkUI中TS扩展的声明式开发范式,关于语法和概念直接看官网官方文档地址:基于TS扩展的声明式开发范式1、基于TS扩展的声明式开发范式2
工具版本:DevEco Studio 3.0 Beta2
SDK版本:3.0.0.1(API Version 7 Beta2)
主要知识点
列表容器(List):本次更新加入了Scroller,可以控制列表的跳转位置。
循环渲染( ForEach ):本次更新修复了index不能使用的问题。
效果演示
1、字母索引导航到列表对应位置,2、列表滑动时也同步定位到字母索引处。
实现思路
1、布局主要结构
2、列表数据格式
3、列表布局
这块需要注意的是,分组效果:相同字母只显示一个就行。
4、字母索引导航
1、获取列表中字母和索引的对应的map集合,和列表字母布局显示条件是相同的。
2、根据字母索引组件选中回调事件,获取字母对应的索引,进行跳转就行
5、列表滑动选中字母
项目地址
项目加了个汉字转拼音的工具类。
https://gitee.com/liangdidi/AlphabetIndexerDemo.git(需要登录才能看到演示图)
总结
此项目经典的使用场景就是联系人,实现过程需要注意:
- 数据源使用拼音工具类获取大写首字母,并进行列表排序。
- 字母布局的显示条件,相同字母只显示一个。
- 首字母与其索引初始化时存入map中,AlphabetIndexer组件在onSelected回调中获取字母对应的索引,滑动到指定的列表位置。
- List组件在onScrollIndex回调中监听滑动到当前顶部的索引,更新选中的字母索引。
每天进步一点点、需要付出努力亿点点。
更多原创内容请关注:中软国际 HarmonyOS 技术团队
入门到精通、技巧到案例,系统化分享HarmonyOS开发技术,欢迎投稿和订阅,让我们一起携手前行共建鸿蒙生态。
©著作权归作者所有,如需转载,请注明出处,否则将追究法律责任
分类
赞
7
收藏 3
回复
7
2
3
相关推荐
做通讯录时候这个界面可太关键了。
超实用的列表字母索引导航。