UICollectionView reloadData gibt den ersten Antwortenden in der Abschnittsüberschrift auf

Ich habe einUICollectionView die Abschnittsüberschrift haben. In der Abschnittsüberschrift habe ich eineUISearchBar. Ich möchte den Inhalt in meiner Sammlungsansicht filtern, wenn ich in die Suchleiste tippe. Ich mache das mit der folgenden Methode:

// The method to change the predicate of the FRC
- (void)filterContentForSearchText:(NSString*)searchText
{
    NSString *query = searchText;
    if (query && query.length) {
        NSPredicate *predicate = [NSPredicate predicateWithFormat:@"name contains[cd] %@ or createdAt contains[cd] %@ or noteText contains[cd] %@ or keywords contains[cd] %@", query, query, query, query];
        [self.fetchedResultsController.fetchRequest setPredicate:predicate];
    } else {
        [self.fetchedResultsController.fetchRequest setPredicate:nil];
    }
    NSError *error = nil;
    if (![[self fetchedResultsController] performFetch:&error]) {
        // Handle error
        NSLog(@"Error");
    }
    [self.collectionView reloadData];
}

Diese Methode wird jedes Mal aufgerufen, wenn sich der Text der Suchleiste ändert. Die Linie[self.collectionView reloadData] versteckte die Tastatur für jedes Zeichen. Ist es möglich, nur die Daten in einer UICollection-Ansicht neu zu laden und nicht die Zusatzansichten wie Abschnittsüberschriften-Überschriften neu zu laden?

Die Daten in meiner collectionView stammen von einem NSFetchResultController.

Ich bin ziemlich zufrieden mit der Funktionsweise meiner Benutzeroberfläche. Wenn es also eine einfache Möglichkeit gibt, den Abschnittsheader NICHT neu zu laden, wäre das großartig!

Antworten auf die Frage(2)

Ihre Antwort auf die Frage