2011-03-07 6 views
0

Donc maintenant je le code suivant:xCode Si UITableView cellulaires Contenu isEqual

if ([[contentsList objectAtIndex:indexPath.row] isEqual:@"Hydrogen"]) 
{ 
Hydrogen *hydrogen = [[Hydrogen alloc] initWithNibName:@"Hydrogen" bundle:nil]; 
[self.navigationController pushViewController:hydrogen animated:YES]; 
hydrogen release]; 
} 

Fondamentalement, ce code indique que si la ligne qui est égale à « hydrogène » (ce qui est une ligne dans une UITableView) , alors il va charger le XIB appelé "Hydrogen.xib" Cependant, quand j'ajoute une barre de recherche à mon code, la recherche fonctionne bien, mais quand je tape dans les résultats, la ligne affichée est toujours la première rangée du tableau . Comment puis-je résoudre ce problème, je pense qu'il a quelque chose à voir avec les lignes dans le code ci-dessus ...

Merci!

Répondre

0

Vous pouvez dupliquer votre tableau, mais placer les contrôleurs de vue en tant que chaînes à la place. Ensuite, utilisez:

Class detailClass = NSClassFromString([controllersArray objectAtIndex:[indexPath row]]); 

UIViewController* detailViewController = [[[detailClass alloc] initWithNibName:nil bundle:nil] autorelease]; 

[self.navigationController pushViewController:detailViewController animated:YES]; 
Questions connexes