本帖最后由 竹林风 于 2018-12-25 14:05 编辑
导读
先看效果:
实现:
1.新建一个页面继承于BaseTableViewController
[Objective-C] 纯文本查看 复制代码 #import "BaseTableViewController.h"
@interface HomePageVC : BaseTableViewController
@end
2.实现数据初始化的方法:
[Objective-C] 纯文本查看 复制代码 -(void)initDataShowHud:(BOOL)showHud{
if (showHud) {
showHUD();
}
//模拟网络请求
NSArray *array;
if (self.pageIndex == 1) {
array = @[@"Amy",@"惜",@"范",@"Allison",@"竹"];
}else{
array = @[@"风",@"云",@"雨",@"雪"];
}
if (showHud) {
dismissHUD();
}
[self refreshPageTableViewWithArray:array];
}
正常开发中,这里是请求服务器的数据,这里就模拟一下。
3.在ViewDidLoad 中显示第一页的数据和开启上拉刷新和下拉加载更多
[Objective-C] 纯文本查看 复制代码 - (void)viewDidLoad {
[super viewDidLoad];
[self hiddenBackBarButtonItems];
[self initDataShowHud:YES];
[self enableTableViewHeaderRefresh];
[self enableTableViewFooterRefresh];
}
4.实现tableView数据显示的代理方法
[Objective-C] 纯文本查看 复制代码 -(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
return self.mAryList.count;
}
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"UITableViewCell"];
if (!cell) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"UITableViewCell"];
}
cell.textLabel.text = [NSString stringWithFormat:@"会员姓名:%@",self.mAryList[indexPath.row]];
return cell;
}
这里只是为了简单的演示,具体的只需要重写相关的代理方法即可。
另外,如果网络不好或者请求失败没有数据的时候,我们为了页面的美观会有一个提示页面。这时只需要重写-(void)showNoDataView()和-(void)removeNoDataView方法就可以了。
附件:
列表刷新.zip
(690.47 KB, 下载次数: 0)
|