实现tableview的下拉刷新
推荐第三方下拉刷新代码http://code4app.com/ios/%E5%BF%AB%E9%80%9F%E9%9B%86%E6%88%90%E4%B8%8B%E6%8B%89%E4%B8%8A%E6%8B%89%E5%88%B7%E6%96%B0/52326ce26803fabc46000000
tableview滑动就会触发这个方法?
-(void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath { //当tableview下拉到最后一行的时候才触发 if (indexPath.row == self.m_data.count - 1) { //定义一个UIView UIView *footSpinnerView = [[UIView alloc] initWithFrame:CGRectMake(0.0f, 0.0f, 320.0f, 60.0f)]; //顶一个有刷新图标的view UIActivityIndicatorView *activity = [[UIActivityIndicatorView alloc] initWithFrame:CGRectMake(130.0f, 0.0f, 60.0f, 60.0f)]; activity.color = [UIColor redColor]; [activity startAnimating];//启动有刷新图标的view footSpinnerView.backgroundColor = [UIColor grayColor]; [footSpinnerView addSubview:activity]; //设置footerview self.myTableView.tableFooterView = footSpinnerView; // self.myTableView.tableHeaderView = footSpinnerView; dispatch_queue_t queue = dispatch_queue_create("my queue", nil); //在后台线程添加数据 dispatch_async(queue, ^(void){ [self.m_data addObject:@"1000"]; [self.m_data addObject:@"1001"]; [self.m_data addObject:@"1002"]; [self.m_data addObject:@"1003"]; [self.m_data addObject:@"1004"]; }); //添加完数据就重新加载数据 dispatch_async(queue, ^(void) { sleep(2); dispatch_sync(dispatch_get_main_queue(), ^(void){ [self.myTableView reloadData]; }); }); // [self.myTableView reloadData]; dispatch_release(queue); [footSpinnerView release]; [activity release]; } }
时间: 2024-10-07 05:03:01