![](https://img-blog.csdnimg.cn/img_convert/2094157afeee123980e396e34f0caad9.png)
最近重构项目的通信录页面,旧版本的索引条相当丑陋,找了下轮子又找不到,没办法,只能自己造了。发现微信的通讯录索引条样式还不错,照着写了一个,顺便添加了震动效果(Impact Feedback)。
首先看一下效果:
单击索引条时
![单击索引条字母](https://img-blog.csdnimg.cn/img_convert/681af98b2a74e2b255978c842681857a.png)
滑动tableView时
![滑动tableView时.gif](https://img-blog.csdnimg.cn/img_convert/2eb7f5ae2bcf1e9ddba5b54f4a5683aa.png)
在索引条上滑动时
![在索引条上滑动时.gif](https://img-blog.csdnimg.cn/img_convert/104095921256bca0c2fed7bf4832c2ff.png)
实现原理
主要分为以下几步:
1、每一个索引,都是一个label,把所有label都竖直排列在一个父view中。这里没有使用重用池,主要考虑到一般的索引条,字母数量也不会太多。
_labelArr = [NSMutableArray new];
for (int i = 0; i < indexes.coun