IOS MJRefresh给tableview下拉刷新上拉加载分页
2016-09-06 20:27
826 查看
(void)viewDidLoad
{
}
/**
集成刷新控件
*/
(void)setupRefresh
{
}
(void)footerRereshing
{
}
-(void)controlEventValueChanged:(id)sender{
}
-(void)refreshData{
}
使用AFNetworking库,取得数据。
-(void)setData:(int) p {
}
{
[super viewDidLoad]; //获取数据 [self firstLoadRefresData]; //下拉刷新 self.refreshControl = [[UIRefreshControl alloc]init]; self.refreshControl.tintColor=[UIColor blueColor]; [self.refreshControl addTarget:self action:@selector(controlEventValueChanged:) forControlEvents:UIControlEventValueChanged]; // 集成上拉加载控件 [self setupRefresh];
}
/**
集成刷新控件
*/
(void)setupRefresh
{
[self.tableView addFooterWithTarget:self action:@selector(footerRereshing)]; self.tableView.footerPullToRefreshText = @"上拉加载更多数据"; self.tableView.footerReleaseToRefreshText = @"松开加载更多数据"; self.tableView.footerRefreshingText = @"正在帮你加载中.....";
}
(void)footerRereshing
{
// 1.添加假数据 if ([self.docs hasNextPage]) { [self setData:[[self.docs page]intValue]+1]; } // 2.2秒后刷新表格UI dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(2.0 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{ // 刷新表格 [self.tableView reloadData]; // (最好在刷新表格后调用)调用endRefreshing可以结束刷新状态 [self.tableView footerEndRefreshing]; });
}
-(void)controlEventValueChanged:(id)sender{
if (self.refreshControl.refreshing) { self.refreshControl.attributedTitle=[[NSAttributedString alloc]initWithString:@"刷新中"]; [self performSelector:@selector(refreshData) withObject:nil afterDelay:0.5]; }
}
-(void)refreshData{
//请求数据 [self firstLoadRefresData]; //刷新表格 [self.tableView reloadData]; //完成刷新 [self.refreshControl endRefreshing]; self.refreshControl.attributedTitle=[[NSAttributedString alloc]initWithString:@"下拉刷新"];
}
使用AFNetworking库,取得数据。
-(void)setData:(int) p {
NSString *string = [NSString stringWithFormat:@"%@p=%d&ps=10", BaseURLString,p]; NSURL *url = [NSURL URLWithString:string]; NSURLRequest *request = [NSURLRequest requestWithURL:url]; AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc] initWithRequest:request]; operation.responseSerializer = [AFJSONResponseSerializer serializer]; [operation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) { self.docs=(NSMutableDictionary *)responseObject; NSMutableArray *doclist=[[NSMutableArray alloc]initWithCapacity:10]; [doclist addObjectsFromArray:self.infos]; [doclist addObjectsFromArray:[self.docs info]]; self.infos=doclist; [self.tableView reloadData]; } failure:^(AFHTTPRequestOperation *operation, NSError *error) { UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Error Retrieving Weather" message:[error localizedDescription] delegate:nil cancelButtonTitle:@"Ok" otherButtonTitles:nil]; [alertView show]; }]; [operation start];
}
相关文章推荐
- iOS不得姐项目--推荐关注模块(一个控制器控制两个tableView),数据重复请求的问题,分页数据的加载,上拉下拉刷新(MJRefresh)
- IOS tableview下拉刷新上拉加载分页
- iOS, PullTableView实现下拉刷新,上拉加载数据
- IOS控件 Tableview 下拉刷新,加载数据
- ios tableView分页加载-sqlite
- iOS UITableView下拉刷新上拉加载更多MJRefresh类库(推荐)使用初级剑侠篇(欢迎提建议和分享遇到的问题)
- IOS控件 Tableview 下拉刷新,加载数据
- iOS中tableView的下拉刷新与上拉加载(二)
- IOS控件 Tableview 下拉刷新,加载数据
- iOS中tableView的下拉刷新与上拉加载(一)
- iOS开发笔记--异步加载图片在TableView中的应用
- IOS之tableview 实现动态加载图片
- ios tableView那些事 (十九) UITableView 加载动态cell
- iOS开发中如何解决TableView中图片延时加载
- tableView下拉刷新,上拉加载简单应用
- IOS开发---菜鸟学习之路--(九)-利用PullingRefreshTableView实现下拉刷新
- IOS开发UI展示之UITableView ──分页加载更多
- ios UITableView分页加载
- ios tableview 那些事(二十二) 使cell高度可变的tableview加载速度更快
- IOS学习日志---1:TableView下拉刷新以及各种失败问题总结