Нужно ли присваивать UIView встроенный IB, прежде чем я могу отобразить его модально? - PullRequest
2 голосов
/ 17 ноября 2010

У меня есть UIImageView, который я хотел бы загрузить с изображением, полученным из экземпляра UIImagePickerController, чтобы показать пользователю предварительный просмотр.В моем приложении есть TabBarViewController, и для того, чтобы скрыть панель, я показываю и пикир, и модальный просмотр.

Контроллер, который я использую для предварительного просмотра, построен на Интерфейсном Разработчике и содержит пустой UIImageView.Когда картинка была сделана, я пытался установить изображение UIImageView, но IBOutlet всегда был нулевым.Вот к чему я пришел, чтобы добиться того, что искал:

[self.view addSubview:self.previewController.view];     
[self.previewController.imageView setImage:self.scaledPicture];     
[self presentModalViewController:self.previewController animated:YES];

Я все еще не уверен, что это правильный подход, но если я не использую первую строку выше,self.previewController.imageView будет нулевым.Визуальный эффект линии не оказывает никакого влияния, потому что модальное представление охватывает все ...

Я много раз проверял ссылки в IB, и все они кажутся правильными.

Правильно ли этоспособ продолжить?

1 Ответ

1 голос
/ 17 ноября 2010

Если вы только что создали previewController, то его imageView будет нулевым, потому что представление не загружено.Причина, по которой первая строка, кажется, заставляет его работать, заключается в том, что он заставляет представление загружаться.

Что вам нужно сделать, так это иметь свойство image в previewController, которое вы можете назначить здесь.Затем загрузите изображение в imageView в viewDidLoad контроллера предварительного просмотра.Таким образом, вы также избегаете тыкать в представления другого контроллера представления.

...