Инициализация объектов в раскадровке программно с целью - PullRequest
0 голосов
/ 29 декабря 2011

У меня есть UIImageView объект в одном из моих viewController видов, который предварительно загружен изображением колеса. Однако вращение колеса определяется временем суток. Поэтому, когда программа запускается, мне нравится, чтобы колесо было инициализировано правильной базой вращения в текущее время. Я попытался сделать это с вращением в методе viewDidLoad контроллера. Пока это работает, можно визуально увидеть начальную позицию и переключиться на новую позицию в зависимости от времени.

Мне нравится, что инициализация невидима, то есть инициализация происходит до загрузки представления. Где мне это сделать?

Ответы [ 2 ]

2 голосов
/ 30 декабря 2011

Мне нравится, что инициализация невидима, то есть инициализация происходит до загрузки представления.Где мне это сделать?

Представление контроллера представления будет загружаться при каждом обращении к свойству view контроллера, и в этой точке будет вызываться -viewDidLoad.Поместите свой код для настройки представления в -viewDidLoad - это правильно.Вы не можете инициализировать представление до того, как оно будет загружено, потому что оно не существует до тех пор, пока не будет загружено, но вы сможете настроить его до его отображения.

Если вы несделав что-нибудь в вашем -viewDidLoad, что приведет к тому, что настройка колеса будет отложена на более поздний момент времени, тогда вы можете попытаться загрузить представление контроллера вида немного раньше.Например, вы можете реализовать -prepareForSegue:sender: в вашем контроллере представления так, чтобы он обращался к свойству view, что приведет к загрузке представления.

0 голосов
/ 31 декабря 2011

Вы также можете создать собственный класс, унаследованный от UIView, и установить несколько пользовательских элементов (в вашем случае установите преобразование вращения) в методе didMoveToWindow.

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