I run sample project with any type UITableView (Native, Circle, ..)
I replaced
[weakSelf.tableView.footRefreshControl endRefreshingWithAlertText:@"Loading " completion:^{
[weakSelf.tableView reloadData];
}];
to
[weakSelf.tableView.footRefreshControl endRefreshing];
Ex: First, 6 rows.
Load more 1: 12 rows
Load more 2: 18 rows
Load more 3: 24 rows
Load more 4: 30 rows
Load more 5: 36 rows (bottom off set on row 33, not index 30)
Load more 6: 42 rows
Load more 7: 48 rows (bottom off set on row 39, not index 42) (offset incorrect = 3)
Load more 8: 54 rows (bottom off set on row 42, not index 48) (offset incorrect = 6)
Load more 8: 60 rows (bottom off set on row 46, not index 54) (offset incorrect = 8)
Load more 8: 66 rows (bottom off set on row 49, not index 60) (offset incorrect = 11)
Load more 8: 72 rows (bottom off set on row 52, not index 66) (offset incorrect = 14)
Load more 8: 78 rows (bottom off set on row 55, not index 72) (offset incorrect = 17)
I run sample project with any type UITableView (Native, Circle, ..) I replaced [weakSelf.tableView.footRefreshControl endRefreshingWithAlertText:@"Loading " completion:^{ [weakSelf.tableView reloadData]; }]; to [weakSelf.tableView.footRefreshControl endRefreshing]; Ex: First, 6 rows. Load more 1: 12 rows Load more 2: 18 rows Load more 3: 24 rows Load more 4: 30 rows Load more 5: 36 rows (bottom off set on row 33, not index 30) Load more 6: 42 rows Load more 7: 48 rows (bottom off set on row 39, not index 42) (offset incorrect = 3) Load more 8: 54 rows (bottom off set on row 42, not index 48) (offset incorrect = 6) Load more 8: 60 rows (bottom off set on row 46, not index 54) (offset incorrect = 8) Load more 8: 66 rows (bottom off set on row 49, not index 60) (offset incorrect = 11) Load more 8: 72 rows (bottom off set on row 52, not index 66) (offset incorrect = 14) Load more 8: 78 rows (bottom off set on row 55, not index 72) (offset incorrect = 17)