首页 / IOS / iOS 集成环信(四)
iOS 集成环信(四)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了iOS 集成环信(四),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2406字,纯文字阅读大概需要4分钟。
内容图文
![iOS 集成环信(四)](/upload/InfoBanner/zyjiaocheng/1208/689084e510694c5495c55b38443e66dc.jpg)
本节主要仿照环信demo来创建demo的界面。
我们在使用环信的demo可以看到环信的整个界面框架是UITabBarController
作为主控制器,里面装了会话ConversationListController
、通讯录ContactListViewController
和设置SettingsViewController
这三个控制器。现在我们来创建这三个控制器。
创建ConversationListController
我们通过环信demo可以看到,ConversationListController
是继承于EaseConversationListViewController
,而EaseConversationListViewController
是继承于EaseRefreshTableViewController
的,现在我们先来研究下EaseRefreshTableViewController
是怎么实现的。
EaseRefreshTableViewController的实现
我们在做项目的时候,tableView 下拉刷新和上拉加载更多是经常使用的功能,而MJRefresh
的上拉刷新是使用最频繁的第三方类,但是,如果我们在每个界面的tableView上添加MJRefresh
的相关代码,就会造成代码重复,所以最好能写一个基类,让凡是带有tableview的控制器继承于这个基类,这个子类就能自动带有MJRefresh
的相关功能,而EaseRefreshTableViewController
就是这么实现的。下面附上部分EaseRefreshTableViewController
的代码。
#import <UIKit/UIKit.h>
#define KCELLDEFAULTHEIGHT 50@interface EaseRefreshTableViewController : UIViewController<UITableViewDataSource, UITableViewDelegate>
{
NSArray *_rightItems;
}
@property (strong, nonatomic) NSArray *rightItems;
@property (strong, nonatomic) UIView *defaultFooterView;
@property (strong, nonatomic) UITableView *tableView;
@property (strong, nonatomic) NSMutableArray *dataArray;
@property (strong, nonatomic) NSMutableDictionary *dataDictionary;
@property (nonatomic) int page;
@property (nonatomic) BOOL showRefreshHeader;//是否支持下拉刷新@property (nonatomic) BOOL showRefreshFooter;//是否支持上拉加载@property (nonatomic) BOOL showTableBlankView;//是否显示无数据时默认背景
- (instancetype)initWithStyle:(UITableViewStyle)style;
- (void)tableViewDidTriggerHeaderRefresh;//下拉刷新事件
- (void)tableViewDidTriggerFooterRefresh;//上拉加载事件
- (void)tableViewDidFinishTriggerHeader:(BOOL)isHeader reload:(BOOL)reload;
@end
具体的实现可以看项目的源代码,路径是:chatDemo-UI3.0 ->EaseUI -> EMUKit ->ViewController ->EaseRefreshTableViewController.h
EaseRefreshTableViewController
这部分的代码帮我们封装了界面刷新和数据为空时候的逻辑代码,我们在做其他的项目的时候可以借鉴一下,能够帮我们省下不少的代码。
EaseConversationListViewController的实现
EaseConversationListViewController
继承于EaseRefreshTableViewController
,具有上拉刷新等MJRefresh相关功能,并重写了tableViewDidTriggerHeaderRefresh
这个方法。具体的实现大家去看下ChatDemo-UI3.0
的源码吧。
ConversationListController的实现
ConversationListController
继承于EaseConversationListViewController
,是会话列表的控制器,这里我们为了演示,仅仅完善其中的界面,一些逻辑代码暂时省略。
原文:http://blog.csdn.net/pelsor/article/details/51337832
内容总结
以上是互联网集市为您收集整理的iOS 集成环信(四)全部内容,希望文章能够帮你解决iOS 集成环信(四)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。