2010-10-05 5 views
0
//Initialize the detail view controller and display it. 
OrderDetailsView *dvController = [[OrderDetailsView alloc] initWithNibName:@"OrderDetailsView" bundle:[NSBundle mainBundle]]; 
dvController.selectedOrder = (@"%@",selectedOrder); 
[self.navigationController pushViewController:dvController animated:YES]; 
[dvController release]; 
dvController = nil; 

Ce qui semble être le problème?Impossible de passer la chaîne à travers les classes

Je reçois l'erreur: l'objet ne peut pas être - soit la propriété en lecture seule ou pas poseur trouvé

Répondre

0

Dans le OrderDetailsView.h ajouter ce qui suit:

@property (nonatomic, retain) [TYPEOFSELECTEDORDER]* selectedOrder; 

Et dans le OrderDetailsView.m:

@synthesize selectedOrder; 
0

Pour vous aider, nous aurions besoin du contenu de l'en-tête OrderDetailsView (en particulier la partie où selectedOrder apparaît).

Compte tenu de l'erreur, je dirais que vous n'avez pas déclaré la propriété dans l'en-tête comme ceci:

@property(retain) NSString *selectedOrder; 

Ensuite, vous pouvez définir le setter et getter pour cette propriété vous-même dans le fichier de mise en œuvre (OrderDetailsView .m) comme ceci:

- (NSString *) selectedOrder { 
    // your getter implementation here 
} 
- (void) setSelectedOrder:(NSString *) value { 
    // your setter implementation here 
} 

Ou vous pouvez utiliser @synthesize selectedOrder; en haut de votre mise en œuvre de la classe. @synthesize va gérer toutes les choses de la mémoire pour vous, compte tenu des informations que vous fournissez dans le

Questions connexes