Как я могу добавить ViewController в scrollview - PullRequest
2 голосов
/ 27 марта 2009

У меня есть прокрутка, к которой я пытаюсь добавить ViewControllers из файла пера.

ViewController *controller=[[ViewController alloc] initWithNibName:@"ViewController" bundle:[NSBundle mainBundle]];
[scrollview addSubview:controller];

Вид прокрутки определен в другом месте.

Всякий раз, когда я добавляю другие элементы, например UIViews, с простым цветным фоном, это прекрасно работает. Когда я добавляю ViewController из пера, Viewdidload получает удар, изображения загружаются из пера, но затем код контроллера останавливается на этом (Нет viewWillAppear и т. Д.). Так что я не получаю никакой обработки контроллера.

Этот же контроллер отлично работает, когда его нажимают как контроллер навигации или вкладки. Я уверен, что что-то упустил в моем образовательном процессе, но надеялся, что кто-то может помочь, чтобы я мог двигаться дальше.

Кстати: ViewController выше является простым UIViewController.

Ответы [ 2 ]

4 голосов
/ 23 июня 2009

Я думаю, что ваша проблема в том, что addSubview ожидает UIView, а не UIViewController - вы, вероятно, получаете предупреждение при компиляции («может не отвечать на селектор» или тому подобное?). Если это так, не игнорируйте их - по моему опыту, они обычно являются проблемой в вашем коде: -)

Вы можете попробовать что-то вроде

[scrollview addSubview:controller.view];

Но это все равно не даст вам обработку viewcontroller ... вам нужно выполнить эту обработку в контроллере представления, который имеет AFAIK scrollview. Я бы посоветовал попытаться получить базовое представление с помощью прокрутки, работающей в IB.

0 голосов
/ 27 марта 2009

ОК, похоже, немного не в порядке, но я добавил viewWillAppear для viewDidLoad, и это сработало, но это не совсем правильный способ, верно?

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