我对Interface Builder有一种非理性的厌恶。
这是我到目前为止所得到的,我得到的只是黑屏。
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
// Override point for customization after application launch.
// Add the navigation controller's view to the window and display.
PrayViewController* prayViewController = [[PrayViewController alloc] initWithTabBar];
[_window addSubview: [[UINavigationController alloc] initWithRootViewController:prayViewController]];
[prayViewController release];
[self.window makeKeyAndVisible];
return YES;
}
答案 0 :(得分:1)
您应该向窗口添加一个视图,如下所示:
UIViewController *rootController = [[MyRootViewController alloc] init];
navigationController = [[UINavigationController alloc]
initWithRootViewController:rootController];
[rootController release];
window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
// *** IMPORTANT DIFFERENCE:
[window addSubview:navigationController.view];
[window makeKeyAndVisible];
您正在将导航视图控制器的整个实例添加到窗口中。
UIWindow是UIView的后代,所以它只是继承了addSubview method。它期望另一个UIView作为参数。
答案 1 :(得分:0)
我会检查你的窗口和它的视图是否通过NSLog返回你所期望的。没有看到创建窗口及其视图的代码,很难说,但我怀疑其中一个没有正确创建。