Когда я пытаюсь выдвинуть подкласс UIViewController
(MissionViewController
) на UINavigationController
из моего корневого контроллера представления, метод viewDidLoad
вызывается, только если я ссылаюсь на базовое представление после инициализации контроллера представления. Однако даже при вызове метода экран не обновляется.
И контроллер вида, и контроллер навигации не равны нулю. Владелец файла в MissionView.xib
имеет значение MissionViewController
. Свойство view владельца файла указывает на представление nib. Я убедился, что свойство topViewController
контроллера навигации указывает на объект MissionViewController
.
Если я изменю MissionViewController
на контроллер корневого представления, представление загружается нормально. Видел несколько похожих постов, но все еще возникают проблемы.
rootViewController.h
@interface TreeGraphController : UIViewController
{
MissionViewController *missionViewCtrlr;
}
@property(nonatomic, retain) MissionViewController *missionViewCtrlr;
rootViewController.m
#import "MissionViewController.h"
...
if (!missionViewCtrlr)
{
MissionViewController *ctrlr = [[MissionViewController alloc] initWithNibName:@"MissionView" bundle:nil];
ctrlr.view.hidden = NO;
self.missionViewCtrlr = ctrlr;
[ctrlr release];
}
myAppDelegate *del = [[UIApplication sharedApplication] delegate];
[del.navigationController pushViewController:missionViewCtrlr animated:NO];