afficher un modal depuis une tableview cell
JonathanSiboni
Membre
bonjour,
j'ai programmé une tableview informatiquement, et non pas par un fichier interface ,
et pour chaque cell , je voudrais afficher le meme modalVC (ce qui changera c'est son contenu).
Pour ca j'ai pensé a utiliser ce code , pour recuperer le nom des cell
je veux donc ouvrir le meme modal VC , seul son nom changera dans l'en tete , ou dans la navigation bar (et correspond au texte de la cell sélectionnée).
Merci pour votre aide! (si c'est pas assez clair , dites le !)
j'ai programmé une tableview informatiquement, et non pas par un fichier interface ,
et pour chaque cell , je voudrais afficher le meme modalVC (ce qui changera c'est son contenu).
Pour ca j'ai pensé a utiliser ce code , pour recuperer le nom des cell
<br />
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath<br />
{<br />
<br />
cell = [tableView cellForRowAtIndexPath:indexPath];<br />
NSString *stringVariable = cell.textLabel.text;<br />
<br />
<br />
if (stringVariable == @"quelquechose") {<br />
//j'affiche le modal VC avec le texte du stringVaribale.<br />
<br />
}<br />
}<br />
je veux donc ouvrir le meme modal VC , seul son nom changera dans l'en tete , ou dans la navigation bar (et correspond au texte de la cell sélectionnée).
Merci pour votre aide! (si c'est pas assez clair , dites le !)
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Tu dois te baser sur ton modèle pour récupérer le texte des cellules putôt.
C'est à dire que dans ton implémentation de "tableView:cellForRowAtIndexPath:" tu récupères certainement ton objet modèle pour remplir ton champ texte, par exemple avec un truc du genre : Alors de la même manière, pour récupérer le texte à utiliser pour ton titre du VC tu vas aller le chercher dans ton modèle : Bon en plus de cela (je t'invite fortement à te renseigner sur le MVC et comment il est utilisé dans Cocoa, car il est utilisé partout), j'espère que tu es au courant qu'il ne faut surtout pas faire de "==" sur les NSString, donc que ton "if" que tu as mis dans ton code ci-dessus ne va jamais marcher ! D'une part il faut utiliser isEqualToString: pour la comparaison entre deux NSStrings, mais en plus là encore ce n'est pas une façon super logique de faire. Tu devrais plutôt te baser là encore sur une propriété de ton modèle pour faire cela, genre te créer une propriété obj.showViewController sur tes objets modèle ou un truc du genre en fonction de tes besoins, plutôt que de tester la valeur du texte.