使用MJRefresh实现上拉加载,下拉刷新功能!!

注:本文转自于:http://blog.csdn.net/mitianbingshi/article/details/17076273

 

  1. #import "HomeViewController.h"  
  2. #import "MJRefresh.h"  
  3.   
  4. @interface HomeViewController ()  
  5. {  
  6.     MJRefreshHeaderView *_header;  
  7.     MJRefreshFooterView *_footer;  
  8.   
  9. }  
  10.   
  11. @property (nonatomic ,retainUITableView *mainTableView;  
  12. @property (nonatomic ,retainNSMutableArray *mainDataList;  
  13.   
  14. @end  
  15.   
  16. @implementation HomeViewController  
  17. @synthesize mainTableView,mainDataList;  
  18.   
  19.   
  20. - (void)viewDidLoad  
  21. {  
  22.     [super viewDidLoad];  
  23.     mainTableView = [[UITableView alloc] initWithFrame:CGRectMake(00320480) style:UITableViewStylePlain];  
  24.     mainTableView.delegate = self;  
  25.     mainTableView.dataSource = self;  
  26.     [self.view addSubview:mainTableView];  
  27.     mainDataList = [[NSMutableArray alloc]init];    
  28.     // 刷新功能  
  29.     _header = [[MJRefreshHeaderView alloc] init];  
  30.     _header.delegate = self;  
  31.     _header.scrollView = mainTableView;  
  32.     //添加上拉加载更多  
  33.     _footer = [[MJRefreshFooterView alloc] init];  
  34.     _footer.delegate = self;  
  35.     _footer.scrollView = mainTableView;  
  36. }  
  37. #pragma mark 代理方法-进入刷新状态就会调用  
  38. - (void)refreshViewBeginRefreshing:(MJRefreshBaseView *)refreshView  
  39. {  
  40.     NSDateFormatter *formatter = [[NSDateFormatter alloc] init];  
  41.     formatter.dateFormat = @"HH : mm : ss.SSS";  
  42.     if (_header == refreshView)  
  43.     {  
  44.         //下拉刷新数据请求********************************  
  45.         // 2秒后刷新表格  
  46.         [self performSelector:@selector(reloadDeals) withObject:nil afterDelay:2];  
  47.           
  48.     } else {  
  49.         //上拉刷新数据请求**************************************  
  50.         // 2秒后刷新表格  
  51.         [self performSelector:@selector(reloadDeals) withObject:nil afterDelay:2];  
  52.     }  
  53. }  
  54.   
  55. - (void)reloadDeals  
  56. {  
  57.     [mainTableView reloadData];  
  58.     // 结束刷新状态  
  59.     [_header endRefreshing];  
  60.     [_footer endRefreshing];  
  61. }  
  62.   
  63.   
  64. -(NSInteger )tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section  
  65. {  
  66.     return mainDataList.count;  
  67. }  
  68.   
  69. -(CGFloat )tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath  
  70. {  
  71.     return 40;  
  72. }  
  73. -(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath  
  74. {  
  75.     static NSString *cellindentifier = @"cell";  
  76.     UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellindentifier];  
  77.     if (!cell) {  
  78.         cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellindentifier];  
  79.     }  
  80.     return cell;  
  81.   
  82. }  
  83.   
  84. - (void)didReceiveMemoryWarning  
  85. {  
  86.     [super didReceiveMemoryWarning];  
  87.     // Dispose of any resources that can be recreated.  
  88. }  
  89.   
  90. @end  

你可能感兴趣的:(使用MJRefresh实现上拉加载,下拉刷新功能!!)