IOS常用第三方框架 --- STableViewController 下拉刷新、上拉加载更多

GitHub:https://github.com/shiki/STableViewController


STableViewController比PullToRefresh多了一个上拉加载更多功能,使用上也差不多简单,需要继承自STableViewController,再实现一些方法:


- (void) viewDidLoad
{  
    [super viewDidLoad];   
    self.title = @"STableViewController Demo"; 
    [self.tableView setBackgroundColor:[UIColor lightGrayColor]];    // 需要创建两个自定义视图用于显示"下拉刷新""上拉加载更多"  
 
    self.headerView = headerView;    
    self.footerView = footerView;  
}

#pragma mark - Pull to Refresh
- (void) pinHeaderView
{  
    [super pinHeaderView];    // 下拉刷新视图显示一些加载动画
}

- (void) unpinHeaderView
{  
    [super unpinHeaderView];    // 下拉刷新视图停止动画
}

- (void) headerViewDidScroll:(BOOL)willRefreshOnRelease scrollView:(UIScrollView *)scrollView
{  
    // 下拉刷新视图显示状态信息  
    if (willRefreshOnRelease)    
        //hv.title.text = @"松开后刷新..."; 
    else   
        //hv.title.text = @"下拉刷新...";
}

- (BOOL) refresh
{  
    if (![super refresh])    
    return NO;    // 下拉刷新加载数据  

    [self performSelector:@selector(addItemsOnTop) withObject:nil afterDelay:2.0];  
    return YES;
}

#pragma mark - Load More
- (void) willBeginLoadingMore
{  
    // 上拉加载更多视图加载动画
}

- (void) loadMoreCompleted
{  
    [super loadMoreCompleted];  
    // 上拉加载更多视图停止动画    

    if (!self.canLoadMore) 
    {    
       //没有更多数据的时候执行代码...  
    }
}

- (BOOL) loadMore
{  
    if (![super loadMore])    
       return NO;    
    
    // 上拉加载更多数据  
    [self performSelector:@selector(addItemsOnBottom) withObject:nil afterDelay:2.0];
    return YES;
}

// 
- (void) addItemsOnTop
{  
    // 加载数据...   
    [self.tableView reloadData];   

    // 数据加载完成通知上拉视图  
    [self refreshCompleted];
}

- (void) addItemsOnBottom
{  
    // 加载更多数据...  
    [self.tableView reloadData];    

    // 通过判断设置是否可以加载更多  
    //self.canLoadMore = NO;    
  
    // 数据加载完成通知下拉视图  
    [self loadMoreCompleted];
}




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值