Add a UIRefreshControl below a UITableView [duplic

2019-04-11 04:23发布

This question already has an answer here:

Is there any way to add a UIRefreshControl below a UITableView? I created a preview of what I want to achieve.

1条回答
Root(大扎)
2楼-- · 2019-04-11 05:17

These won't give the UIRefresh Controls but you can add these at the bottom of the Screen

Declare below in your header

  UIActivityIndicatorView                             *spinner;

Initialise the same in ViewDidLoad in your implementation

spinner = [[[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray] autorelease];
    [spinner stopAnimating];
    spinner.hidesWhenStopped = NO;
    spinner.frame = CGRectMake(0, 0, 320, 44);
    self.tableviewName.tableFooterView = spinner;

Add These and it will be called when tableview Scrolled

- (void)scrollViewDidEndDragging:(UIScrollView *)aScrollView
                  willDecelerate:(BOOL)decelerate{

    CGPoint offset = aScrollView.contentOffset;
    CGRect bounds = aScrollView.bounds;
    CGSize size = aScrollView.contentSize;
    UIEdgeInsets inset = aScrollView.contentInset;
    float y = offset.y + bounds.size.height - inset.bottom;
    float h = size.height;

    float reload_distance = 50;
    if(y > h + reload_distance) {
        NSLog(@"load more data");
        [spinner startAnimating];
    }
}

Hope This will help you out !

查看更多
登录 后发表回答