Невозможно передать строку через классы - PullRequest
0 голосов
/ 05 октября 2010
//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;

В чем проблема?

Я получаю сообщение об ошибке: объект не может быть установлен - либо свойство только для чтения, либо не найден установщик

Ответы [ 2 ]

0 голосов
/ 05 октября 2010

Чтобы помочь вам, нам понадобится содержимое заголовка OrderDetailsView (особенно часть, где появляется selectedOrder).

Учитывая ошибку, я бы сказал, что вы не объявили свойство в заголовке следующим образом:

@property(retain) NSString *selectedOrder;

Затем вы можете самостоятельно определить установщик и получатель для этого свойства в файле реализации (OrderDetailsView.m) следующим образом:

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

Или вы можете использовать @synthesize selectedOrder; в верхней части реализации вашего класса. @synthesize будет обрабатывать всю память для вас, учитывая информацию, которую вы предоставляете в @property

0 голосов
/ 05 октября 2010

В OrderDetailsView.h добавьте следующее:

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

А в OrderDetailsView.m:

@synthesize selectedOrder;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...