Erstellen eines ausgeblendeten UISegmentedControl in einer UITableView

Wie bei der iBooks-App werden beim Herunterziehen der Tabellenansicht eine Suchleiste und ein segmentiertes Steuerelement angezeigt, mit denen Sie zwischen zwei Arten von Ansichten suchen und wechseln können.

Es bleibt in dieser Position hängen, wenn Sie weit genug nach unten ziehen, und wird alternativ ausgeblendet, wenn Sie die Tischansicht weit genug nach oben ziehen.

Ich versuche das gleiche mit einemUISegmentedControl. Bisher habe ich der Tabelle erfolgreich ein segmentiertes Steuerelement als Unteransicht hinzugefügt. (Es hat einen negativen Y-Rahmen, so dass er über der Tabellenansicht haftet).

Ich habe auch diesen Code implementiert:

- (void)scrollViewWillBeginDecelerating:(UIScrollView *)scrollView {
    float yOffset = scrollView.contentOffset.y;

    if (yOffset < -70) {
        [scrollView setContentOffset:CGPointMake(0.0f, -70.0f) animated:YES];
    } else if (yOffset > -10) {
        [scrollView setContentOffset:CGPointMake(0.0f, -11.0f) animated:YES];
    }
}

Dies funktioniert gut, bis ich versuche, das segmentierte Steuerelement zu verwenden. Wenn sich die Tabelle wie ein Bildlauf verhält, wird das segmentierte Steuerelement ignoriert (d. H., Wenn ich auf ein Segment tippe, wird es nicht einmal ausgewählt, sondern die Tabelle wird nach oben gerollt und das segmentierte Steuerelement ausgeblendet.

Ich habe das benutztscrollViewDidScroll Methode, aber das machte es fehlerhaft und das Scrollen nervös.

Ich habe auch versucht, die segmentierten Steuerelemente zu erstellenexclusiveTouch = YESDies hatte jedoch keinerlei Auswirkungen.

Für jede Hilfe wäre ich dankbar! Danke im Voraus!

Antworten auf die Frage(1)

Ihre Antwort auf die Frage