Erkennen des unteren "Bounce" von UITableView

Ich habe eine Tabellenansicht, die eine Animation ausführt, wenn der Benutzer in einer UITableView einen Bildlauf nach unten durchführt (Daumen nach oben drücken), und eine andere Animation, wenn der Benutzer in einer UITableView einen Bildlauf nach oben durchführt (Daumen nach unten drücken).

Das Problem besteht darin, dass der Benutzer das Ende einer UITableView erreicht und abprallt. Der Tisch registriert eine Aufwärts- und eine Abwärtsbewegung und führt die Animation dann aus, wenn dies nicht der Fall sein sollte.

Das gleiche Verhalten tritt auf, wenn Sie nach oben scrollen. Ich kann es jedoch folgendermaßen erkennen:

- (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;

    }

}

Das funktioniert perfekt, aber für mein Leben kann ich keine if-Bedingung finden, um auch den Boden zu erkennen. Ich bin sicher, es ist einfach und ich kann es einfach nicht herausfinden.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage