Если вы выполняете код в - (id) init, вы должны обратить внимание, когда используете некоторые коды, такие как self.view.frame = .... или [self.view addSubView: xxx] inside - (id) init, он загрузит view и запустит - (void) метод viewDidLoad перед - (id) возвращением init.
Если вы сделали свое представление с IB, тогда метод с именем - (void) awakeFromNib;будет вызван, когда ваши коды загружают представление из IB.Если вы сделали просмотр по кодам, вы можете поместить эти коды в - (void) loadView для построения иерархии представлений.