Какой метод UIView вызывается при создании от Nib?
-
27-09-2019 - |
Вопрос
У меня есть простой пользовательский вид, который подключен к выходу к Nib. Для этого конкретного представления есть действия, которые я хотел бы выполнить по мнению, когда он инициализируется, независимо от того, на что он включен.
Беда в том, что и init init или (ID) INITWITHFRAME: (CGRECT) Методы кадров вызываются на пользовательском представлении.
Какой метод вызывается UIView, когда он создается от Nib? Я бы просто использовал метод контроллера просмотра и ViewDidload, за исключением того, что этот конкретный вид появляется на большом количестве разных ниб.
Решение
Вы можете использовать awakeFromNib
Для такого рода инициализации. Регулярные методы инициализации вызываются, когда объект на самом деле создается IB, а затем архивировано с помощью NSCoding
, Таким образом, эти методы никогда не вызываются в вашем приложении. Вы также можете переопределить initWithCoder:
Что будет называться, но я не рекомендую это, так как другие выходы не могут быть подключены в этот момент.