2016-06-12 1 views
0
#pragma mark - UISearchResultsUpdating 
- (void)updateSearchResultsForSearchController:(UISearchController *)searchController 
{ 
    [searchResults removeAllObjects]; 

    NSString *searchString = searchController.searchBar.text; 

     if([searchString length]>0){ 
     for(NSUInteger i =0; i < titles.count; i++){ 

NSDictionary *titleAndIndex = [NSDictionary dictionaryWithObjectsAndKeys:[titles objectAtIndex:i], @"title",[ChNames objectAtIndex:i], @"ChName",[checkon objectAtIndex:i], @"checkon",[NSNumber numberWithUnsignedInteger:i], @"index",nil]; 

[searchResults addObject:titleAndIndex]; 
NSLog(@"filteredArray2: %@", titleAndIndex); 

} 

[searchResults filterUsingPredicate:[NSPredicate        predicateWithFormat:@"title contains[c] %@",searchString]]; 

} 

[self.tableView reloadData]; 

} 


#pragma mark - UISearchBarDelegate 

- (void)searchBarSearchButtonClicked:(UISearchBar *)searchBar { 
      [searchBar resignFirstResponder]; 
} 
+0

をUISearchResultsUpdatingあなたは、コードサンプルをフォーマットすることができます - その代わりに、4つのスペース – AlBlue

+0

そして、何あなたの現在のコードと一緒に間違っていると、それぞれの行を開始しますか? – Larme

答えて

0

以下のコードを試してみてください。

プラグママーク - あなたはポストの上部にあるボタンを使用している場合

- (void)updateSearchResultsForSearchController:(UISearchController *)searchController { 

[searchResults removeAllObjects]; 

self.tableView.allowsMultipleSelectionDuringEditing = YES; 


NSString *searchString = searchController.searchBar.text; 
for(NSUInteger i =0; i < titles.count; i++){ 
    NSDictionary *titleAndIndex = [NSDictionary dictionaryWithObjectsAndKeys: 
            [titles objectAtIndex:i], @"title",nil]; 
    [searchResults addObject:titleAndIndex]; 
    //  NSLog(@"filteredArray2: %@", titleAndIndex); 



} 
[searchResults filterUsingPredicate:[NSPredicate 
            predicateWithFormat:@"title contains[c] %@",searchString]]; 
dispatch_async(dispatch_get_main_queue(), ^{ 
    [self.tableView reloadData]; 


}); 
} 
関連する問題