1

J'ai un pick pick avec 2 composants, j'ai un contrôle segmenté de 3 boutons. En fonction de ce que l'utilisateur sélectionne entre la sélection et le contrôle segmenté, j'ai un UILabel qui affiche une chaîne. Je voudrais pousser un contrôleur de vue basé sur ce qui est affiché dans le UILabel. Dois-je utiliser une instruction switch pour cela? Comment puis-je convertir les valeurs de chaîne en expressions entières pour que l'instruction switch fonctionne?contrôleur de vue push basé sur la valeur de UILabel

switch (fooLabel.text) { 
    case @"foo-bar": 
     [self.navigationController pushViewController:exampleVC animated:YES]; 
     break; 

    default: 
     break; 
} 

merci!

Répondre

2

il suffit d'utiliser plusieurs déclarations si

if ([fooLabel.text isEqualToString:@"foo-bar"]) 
{ 
    //Show one 
} 
else if ([fooLabel.text isEqualToString:@"bar-foo"]) 
{ 
    //Show Other 
} 
else 
{ 
    //Show Default 
} 
+0

Oui, je peux utiliser des déclarations « si », mais à ce stade, il est possible que je pourrais avoir plus de 30 vues à pousser à. J'espérais donc utiliser des instructions switch pour faciliter le codage. Il semble que je doive créer un dictionnaire à partir de. Au moment où je fais cela, je pourrais coder les instructions «si». Pensées? – JohnnyRedTruss

+0

Je trouve qu'il est assez facile de faire les déclarations if. un dictionnaire serait un peu plus de maux de tête à maintenir. J'utilise généralement des constantes plutôt que des chaînes, donc il n'y a qu'un seul endroit pour changer les valeurs. –

+0

Très bien, merci @Jason. Away je code ....... – JohnnyRedTruss

Questions connexes