Wykrywanie dolnego „odbicia” UITableView

Mam widok tabeli, który wykonuje animację, gdy użytkownik przewija w dół na UITableView (przesuń kciuk w górę) i inną animację, gdy użytkownik przewija w górę (naciśnij kciuk w dół) na UITableView.

Problem polega na tym, że gdy użytkownik dotrze do dna UITableView i odbija się, tabela rejestruje ruch w górę, a następnie w dół, wykonując animację, gdy nie powinna.

To samo dokładnie zachowuje się podczas przewijania do góry; jednak potrafię to wykryć tak:

- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView {

    self.lastContentOffset = scrollView.contentOffset;

}


-(void) scrollViewDidScroll:(UIScrollView *)scrollView {

    // Check if we are at the top of the table
    // This will stop animation when tableview bounces

    if(self.tableView.contentOffset.y < 0){
        // Dont animate, top of tableview bounce


    } else {

        CGPoint currentOffset = scrollView.contentOffset;

        if (currentOffset.y > self.lastContentOffset.y) {

            // Downward animation
            [self animate:@"Down"];

        } else {

            // Upward
            [self animate:@"Up"];

        }

        self.lastContentOffset = currentOffset;

    }

}

To działa doskonale, ale przez całe życie nie potrafię określić, czy warunek do wykrywania dna również. Jestem pewien, że to proste i po prostu nie mogę tego zrozumieć.

questionAnswers(2)

yourAnswerToTheQuestion