Note that there are some explanatory texts on larger screens.

plurals
  1. POTable display only 2 labels (out of 4) when use the search Bar
    primarykey
    data
    text
    <p>I have a table with 4 labels which works fine. When I use the search bar, which also works fine, the table displays only two labels:</p> <pre><code>- (void)viewDidLoad { [super viewDidLoad]; NSString *filePath = [[NSBundle mainBundle] pathForResource:@"airports" ofType:@"json"]; NSString *JSONData = [[NSString alloc] initWithContentsOfFile:filePath encoding:NSUTF8StringEncoding error:NULL]; NSArray *airports = [NSJSONSerialization JSONObjectWithData:[JSONData dataUsingEncoding:NSUTF8StringEncoding] options:0 error:nil]; finalArray = [[NSArray alloc]init]; finalArray = airports; } -(void)filterContentForSearchText:(NSString *)searchText{ NSPredicate *resultPredicate = [NSPredicate predicateWithFormat:@"SELF.airport_name contains[cd] %@", searchText]; self.searchResults = [finalArray filteredArrayUsingPredicate:resultPredicate]; } -(BOOL)searchDisplayController:(UISearchDisplayController *)controller shouldReloadTableForSearchString:(NSString *)searchString{ [self filterContentForSearchText:searchString]; return YES; } - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView { // Return the number of sections. return 1; } - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { if (tableView == self.tableView) { return [finalArray count]; }else{ return [searchResults count]; } } - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath: (NSIndexPath *)indexPath {static NSString *simpleTableIdentifier = @"AirportCell"; AirportCell *cell = (AirportCell *)[tableView dequeueReusableCellWithIdentifier:simpleTableIdentifier]; if (cell == nil) { NSArray *nib = [[NSBundle mainBundle] loadNibNamed:@"AirportCell" owner:self options:nil]; cell = [nib objectAtIndex:0]; } NSString *airportName = [[NSString alloc]init]; NSString *iataCode = [[NSString alloc]init]; NSString *icaoCode = [[NSString alloc]init]; NSString *countryAirport = [[NSString alloc]init]; if (tableView == self.tableView) { airportName = [[finalArray objectAtIndex:indexPath.row] objectForKey:@"airport_name"]; iataCode = [[finalArray objectAtIndex:indexPath.row] objectForKey:@"iata_code"]; icaoCode = [[finalArray objectAtIndex:indexPath.row] objectForKey:@"icao_code"]; countryAirport = [[finalArray objectAtIndex:indexPath.row] objectForKey:@"country"]; cell.iataCodeLabel.text = iataCode; cell.iataCodeLabel.font = [UIFont fontWithName:@"Verdana" size:13]; cell.icaoCodeLabel.text = icaoCode; cell.icaoCodeLabel.font = [UIFont fontWithName:@"Verdana" size:13]; cell.airportNameLabel.text = airportName; cell.airportNameLabel.font = [UIFont fontWithName:@"Verdana" size:13]; cell.countryLabel.text = countryAirport; cell.countryLabel.font = [UIFont fontWithName:@"Verdana" size:13]; }else{ airportName = [[searchResults objectAtIndex:indexPath.row] objectForKey:@"airport_name"]; iataCode = [[searchResults objectAtIndex:indexPath.row] objectForKey:@"iata_code"]; icaoCode = [[searchResults objectAtIndex:indexPath.row] objectForKey:@"icao_code"]; countryAirport = [[searchResults objectAtIndex:indexPath.row] objectForKey:@"country"]; cell.iataCodeLabel.text = iataCode; cell.iataCodeLabel.font = [UIFont fontWithName:@"Verdana" size:13]; cell.icaoCodeLabel.text = icaoCode; cell.icaoCodeLabel.font = [UIFont fontWithName:@"Verdana" size:13]; cell.airportNameLabel.text = airportName; cell.airportNameLabel.font = [UIFont fontWithName:@"Verdana" size:13]; cell.countryLabel.text = countryAirport; cell.countryLabel.font = [UIFont fontWithName:@"Verdana" size:13]; } return cell; } </code></pre> <p><img src="https://i.stack.imgur.com/qnzXm.png" alt="enter image description here"> <img src="https://i.stack.imgur.com/GyMIX.png" alt="enter image description here"></p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload