Передача изображения через UINavigationController - PullRequest
1 голос
/ 27 июня 2011

У меня есть изображение в моем RootViewController (которое выбирается из UIImagePickerController), которое мне нужно передать в новый вид через контроллер навигации. У меня есть следующий код, который я использую для передачи строк в следующем представлении:

//Get strings
NSString *text1 = line1.text;
NSString *text2 = line2.text;
NSString *text3 = line3.text;
NSString *text4 = line4.text;

//Create an GeneratedViewController and initialise it with given data
GeneratedViewController *gController = [[GeneratedViewController alloc] initWithNibName:@"GeneratedViewController" bundle:[NSBundle mainBundle]];
gController.text1 = text1;
gController.text2 = text2;
gController.text3 = text3;
gController.text4 = text4;
[self.navigationController pushViewController:gController animated:YES];
[gController release];
gController = nil;

Как я могу передать изображение в GeneratedViewController?

Спасибо

Jack

Ответы [ 2 ]

1 голос
/ 27 июня 2011

Самое простое решение - создать свойство типа UIImage в GeneratedViewController.Затем, после создания и инициализации GeneratedViewController, но перед тем, как вставить его в navigationController, вам необходимо установить для свойства изображения в gController выбранное изображение.

0 голосов
/ 27 июня 2011
  • Свойство на контроллере, как и текст, установленный
  • В методе или инициализаторе
  • через уведомление (NSNotificationCenter).Это немного сложнее.
  • Посредством делегирования, где первый контроллер является делегатом источника данных на сгенерированном контроллере.Это позволяет второму контроллеру получать то, что ему нужно, в любое время.

Какой метод использовать, зависит от того, как создаются контроллеры, когда изображение может изменяться и сколько разных частей данных требуется второму контроллеру - один или два бита, свойства работают нормально.Более того, я склонен использовать делегирование.

...