У меня есть сценарий, где у меня есть:
- UINavigationController с UIViewController (mainVC) с UIView (mainView), содержащим UIScrollView (scrollView)
- полноэкранная кнопка в mainView, где после нажатия на нее выдвигается новый UIViewController (fullScreenVC), с объектом scrollView, переданным по ссылке (сохраненным с атрибутами nonatomic и assign). fullScreenVC правильно показывает объект scrollView.
- после закрытия fullScreenVC, NSNotification отправляется на mainVC. Здесь кроется проблема ...
Когда fullScreenVC удален, scrollView больше не отображается в mainVC. Я могу сказать, что он все еще существует, распечатав scrollView в журналах во время уведомления.
Я бы подумал, что, отправляя и сохраняя scrollView по ссылке, mainVC все равно сохранит его. Я также попытался отправить scrollView обратно в mainVC, если он был удален, но это ничего не дало.
Единственный способ решить эту проблему - добавить scrollView обратно в mainVC на этапе уведомления. Есть ли что-то особенное, что я должен сделать при отправке объектов UIScrollView (или, в более общем случае, объектов UIKit)? Или я где-то сделал глупость?