У меня есть подкласс UITableViewController
, который создается в зависимости от того, где он используется, в NIB или через код. В обоих случаях я хочу выполнить настройку в методе инициализации. Означает ли это, что мне нужно реализовать как initWithNibName:bundle:
, так и initWithCoder:
, и будет ли каждый метод вызывать его соответствующий супер инициализатор?
Пока мне это не нужно прямо сейчас, что делать, если я также хочу создать экземпляр контроллера представления с помощью initWithStyle:
? Нужно ли мне тогда 3 разных метода init, которые повторяют одно и то же поведение?
Похоже, что это нарушает все назначенное соглашение инициализатора, так как по существу есть 3 отдельных инициализатора, которые в конечном итоге не вызовут обычный метод init. Или есть способ создать общий назначенный инициализатор, поддерживая три разных маршрута-экземпляра?