iOS开发中QQ好友列表下拉显示全部好友实现思路
来源:互联网 发布:网络电视台客户端 编辑:程序博客网 时间:2024/06/04 19:21
在QQ的好友页面有一个点击各个分类,然后展示分类中所有好友的效果,今天就说一说实现该效果的一个思路。
这个页面肯定是需要一个UITableView的,在tableview的代理方法中要实现分区的一个方法,即要返回tableview的分区数。返回的分区数就是好友的分类数。
tableview中各个分区的行数就是各个好友分类中的好友数。显示各个好友分类的视图是各个分区的一个头视图。头视图会有一个点击事件,用于好友分类的展开和收起。
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
方法的实现很关键,1.要根据section的不同返回不同的行数。 2.要根据该行的点击状态显示行数(有显示所有的行数或者不显示行数两种状态)。代码:- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
GroupModel *groupModel =_dataArray[section];
NSInteger count = groupModel.isOpened ? groupModel.groupFriends.count : 0;
return count;
}
tableview的数据源一般是一个数组,数组中会有模型,每一个分区对应一个模型,模式中除了有每个分区要显示的数据,我们还应为模型增加一个属性来存储各个分区的点击状态即各个好友分类是否展开。
每次点击各个分区的头视图的时候需要完成两件事:1.改变各个模型中的点击的状态属性 2.更新tableview的点击的分区。
代码:
- (void)clickAction:(UIButton *)btn{
GroupModel *groupModel =_dataArray[btn.tag];
// 改变是否显示详情的状态
groupModel.isOpened = !groupModel.isOpened;
[self.tableViewreloadSections:[NSIndexSetindexSetWithIndex:btn.tag]withRowAnimation:UITableViewRowAnimationAutomatic];
}
这里我在各个分区的头视图上添加了一个按钮。- iOS开发中QQ好友列表下拉显示全部好友实现思路
- Qt实现QQ好友下拉列表
- 实现QQ 好友列表
- iOS TableView实现QQ好友列表
- IOS实现仿qq好友列表功能
- android 实现QQ好友列表
- XMPP通讯开发-仿QQ显示好友列表和用户组
- iOS开发脚踏实地学习day09-QQ好友列表
- IOS详解TableView —— QQ好友列表的实现
- IOS详解TableView —— QQ好友列表的实现
- iOS TableView实现QQ好友列表(一)
- iOS TableView实现QQ好友列表(二)
- iOS TableView实现QQ好友列表(三)
- iOS TableView实现QQ好友列表(一)
- iOS TableView实现QQ好友列表(二)
- iOS TableView实现QQ好友列表(三)
- Android开发学习之QQ好友列表的实现
- 转移QQ好友列表
- Java:对象的强、软、弱和虚引用
- MySQL的概述:
- sql server express版本不能启动代理服务的另类解决办法
- 135Candy
- 我的第一天
- iOS开发中QQ好友列表下拉显示全部好友实现思路
- window.getComputedStyle()方法的使用
- python super()和classmethod
- xml文件读取到数据库
- R语言连接数据库汉字乱码问题
- Spring Cloud Netflix之Eureka Doc Translation
- Java设计模式笔记之组合模式
- CF-Codeforces Round #418 (Div. 2)-C-An impassioned circulation of affection
- 读SDWebImage库系列(1)-如何保证同一时间请求相同URL时,只进行一次网络请求