Есть ли способ передать данные из одного представления в modalviewcontroller?

У меня есть представление с UIView и кнопкой. Нажатие кнопки вызывает ModalViewController, который является UIView с UITextField в нем. Мне нужно передать строковое значение NSObject в UIView в ModalViewController в виде строки. При нажатии кнопки я называю это:

-(void) editNote{

TextViewController * vc = [(TextViewController *)[TextViewController alloc] init];
UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:vc];

[self.navigationController presentModalViewController:nav animated:YES];
[vc release];
}   

Обычно при выборе строки мы отправляем данные с помощью pushviewcontroller в следующее представление, но после большого количества поисков в Google я не могу понять, как передать данные с помощью presentmodalviewcontroller.


person lifemoveson    schedule 17.08.2011    source источник


Ответы (1)


Вы можете добавить свойство в TextViewController, а затем просто использовать vc.object = myObject. Или вы можете создать новый метод init, который будет получать дополнительную информацию.

person jtbandes    schedule 17.08.2011
comment
Недвижимость - это путь. Если у вас есть более насущные потребности (например, представление таблицы), вы можете настроить систему делегатов с главным контроллером в качестве делегата. - person FeifanZ; 18.08.2011
comment
Выбор между использованием свойства или передачей переменной в методе init следует различать немного лучше. Если важно, чтобы объект считал информацию полностью сформированной, вы должны обеспечить ее требование для метода init. Если это не обязательно, то свойство подойдет, и вы можете дополнительно рассмотреть возможность создания метода инициализации, который может принимать var для удобства. - person Paul.s; 18.08.2011