2013-09-30 4 views
5

Vor iOS7 haben wir ein Lupensymbol oben im UITableView-Index hinzugefügt, indem wir den Abschnittsindextiteln UITableViewIndexSearch vorangestellt haben.UITableView-Abschnittsindex kann nicht zum Suchleistenindex scrollen

Durch im Abschnitt Index für das Lupensymbol ziehen, kann die Tableview mit dem folgenden Code zum SearchBar blättern:

- (NSInteger)tableView:(UITableView *)tableView sectionForSectionIndexTitle:(NSString *)title atIndex:(NSInteger)index { 

    NSInteger resultIndex = [self getSectionForSectionIndex:index]; 

    // if magnifying glass 
    if (resultIndex == NSNotFound) { 
     [tableView setContentOffset:CGPointZero animated:NO]; 
     return NSNotFound; 
    } 
    else { 
     return resultIndex; 
    } 
} 

jedoch in iOS 7, würde dies bewegt sich nur auf den ersten Abschnitt statt die Suchleiste.

Antwort

9

Um dies zu lösen, passten wir die Inhalte für die UITableView Inhalt Einsatz in iOS 7 eingeführt, um Konto-Offset: CGPointMake(0.0, -tableView.contentInset.top)

- (NSInteger)tableView:(UITableView *)tableView sectionForSectionIndexTitle:(NSString *)title atIndex:(NSInteger)index { 

    NSInteger resultIndex = [self getSectionForSectionIndex:index]; 

    // if magnifying glass 
    if (resultIndex == NSNotFound) { 
     [tableView setContentOffset:CGPointMake(0.0, -tableView.contentInset.top)]; 
     return NSNotFound; 
    } 
    else { 
     return resultIndex; 
    } 
} 
Verwandte Themen