zoukankan      html  css  js  c++  java
  • iOS tableView刷新

    下面是我对AFN刷新一个简单的封装我们只需要传过去一个tableView就好了 简化了一些代码

    #import <Foundation/Foundation.h>
    
    typedef NS_ENUM(NSInteger, refreshType) {
        TableViewHeaderRefresh,
        TableViewFooterRefresh
    
    };
    
    @interface HuTableViewRefresh : NSObject
    
    
    /**
     tableView 刷新
    
     @param tableView tableView
     @param success 下拉或者上拉
     */
    + (void)tableViewRefresh:(UITableView *)tableView success:(void(^)(refreshType refresh))success;
    
    
    @end
    #import "HuTableViewRefresh.h"
    
    @implementation HuTableViewRefresh
    
    + (void)tableViewRefresh:(UITableView *)tableView success:(void (^)(refreshType))success{
    
        tableView.mj_header = [MJRefreshNormalHeader headerWithRefreshingBlock:^{
            success(TableViewHeaderRefresh);
        }];
        [tableView.mj_header beginRefreshing];
        tableView.mj_footer = [MJRefreshBackNormalFooter footerWithRefreshingBlock:^{
            success(TableViewFooterRefresh);
        }];
        tableView.mj_footer.automaticallyHidden = YES;
    
    }
    
    
    
    @end
    
    使用方法
    
     [HuTableViewRefresh tableViewRefresh:self.tableView success:^(refreshType refresh) {
    
            refresh == TableViewHeaderRefresh ? _pageNum = kPageNum: _pageNum ++;
            [self loadingData];
        }];
    - (void)loadingData{
    
        NSDictionary *paramters = @{@"pageNum":@(_pageNum),@"pageSize":@"10",@"classTypes":@"4"};
    
        WS(weakSelf)
        [PCHttpTools
            myCollection:paramters
              view:nil
                 success:^(NSArray *dataListArray) {
    
             [self.dateListArray addObjectsFromArray:dataListArray];
    
             if (_pageNum == kPageNum) {
    
                 [self.tableView.mj_header endRefreshing];
    
                 if (dataListArray.count <= 0) {
                     [self.tableView removeFromSuperview];
                     [self loadingDefaultview:@"暂无收藏课程~"];
    
                 }
                 [self.dateListArray removeAllObjects];
    
             }
    
             if (dataListArray.count < 10) {
    
                 [weakSelf.tableView.mj_footer endRefreshingWithNoMoreData];
    
             }
    
             [weakSelf.dateListArray addObjectsFromArray:dataListArray];
             [self.tableView reloadData];
    
         }];
    }
    
  • 相关阅读:
    顺序容器的操作
    C++顺序容器
    Java8实战系列一
    Java枚举的小知识点
    Java集合框架入门介绍(一)
    测试代码格式
    Eclipse通过jdbc连接sqlserver2008数据库的两种方式
    排序算法之插入排序
    排序算法之冒泡排序
    容器扩容之分摊时间复杂度分析
  • 原文地址:https://www.cnblogs.com/huanghaipo/p/7230396.html
Copyright © 2011-2022 走看看