Я пытаюсь реализовать базовый UINavigationController
, и у меня возникает проблема с отображением неправильного представления на контроллере навигации.
Я начал с создания Window Based Application
в Xcode 4
, которое дало мне следующие файлы: spellingAppDelegate.h
, spellingAppDelegate.m
и MainWindows.xib
. Затем я добавил новый подкласс UIViewController
и назвал его gameViewController
.
Ниже приведен мой код для myAppDelegate.h
#import <UIKit/UIKit.h>
@interface spellingAppDelegate : NSObject <UIApplicationDelegate> {
UIWindow *window;
UINavigationController *navigationController;
}
@property (nonatomic, retain) IBOutlet UIWindow *window;
@property (nonatomic, retain) UINavigationController *navigationController;
@end
вот мой myAppDelegate.m
#import "spellingAppDelegate.h"
#import "gameViewController.h"
#import "resultViewController.h"
@implementation spellingAppDelegate
@synthesize window = window;
@synthesize navigationController = navigationController;
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
[self.window makeKeyAndVisible];
// create the MyView controller instance:
gameViewController *controller = [[gameViewController alloc] initWithNibName:@"gameViewController" bundle:nil];
// set the title that appears in the navigation bar:
[controller.navigationItem setTitle:@"Main View"];
// create the Navigation Controller instance:
UINavigationController *newnav = [[UINavigationController alloc] initWithRootViewController:controller];
// set the navController property:
[self setNavigationController:newnav];
// release both controllers:
[newnav release];
[controller release];
// add the Navigation Controller's view to the window:
[window addSubview:[navigationController view]];
return YES;
}
У меня сложилось впечатление, что если я запусту приведенный выше код, приложение запустится с gameViewController.xib. Тем не менее, его отображение MainWindow.xib. Я знаю, что, наверное, скучаю по чему-то простому, но не могу понять, что я сделал не так. Спасибо.