J'essaie de modifier ma méthode didSelectRowAtIndexPath pour utiliser mon AddView également pour l'édition (uniquement avec les champs de texte remplis). Mais ça ne fonctionne pas! Je vous suffit d'entrer le mode d'édition, vérifier si (self.editing) et faire quelque chose comme:didSelectRowAtIndexPath en mode d'édition pour mettre à jour les données
if (self.editing) {
AddViewController *viewController = [[AddViewController alloc]
initWithNibName:@"AddView" bundle:[NSBundle mainBundle]];
//get selected Object
User *userEdit = [[User alloc] init];
userEdit = [self.users objectAtIndex:indexPath.row];
viewController.user = userEdit;
[viewController setEditUser];
[self.navigationController pushViewController:viewController animated:YES];
[viewController release];
//deselect Row after navigate back
[tableView deselectRowAtIndexPath:indexPath animated:YES];
Qu'est-ce que je fais mal? J'essaie aussi d'envoyer l'objet User comme [viewController setEditUser: editUser] mais cela ne fonctionne pas, donc je l'ai essayé avec init.
Mon setEditUser méthode ressemble (dans la vue)
- (void)setEditUser{
self.userTitle.text = self.user.title; //this is not working!!! ?????
NSLog(@"blub %@", self.user.title); //this is working!!!!
}
Merci pour votre aide
D'abord, 'USEREDIT = [[alloc utilisateur] init];' est faux et crée une fuite de mémoire. Retirez-le. Deuxièmement, vous ne nous montrez pas le code pertinent. Que devons-nous déduire du fait que 'self.user.servertitle' contient apparemment la chaîne que vous attendez et' self.user.title' peut-être pas? Nous ne savons rien sur ces objets et comment vous les créez. –
désolé mauvais, devrait être dans les deux cas user.title J'ai les paramètres suivants à mon avis: @synthesize utilisateur, userTitle; et dans mon fichier d'en-tête @property (nonatomic, retain) IBOutlet UITFieldField * userTitle; et Utilisateur * utilisateur; – phx