タイトルで述べたように、Navigation Controller
既にTab Controller
. だから、このページのようなスタッフをやろうとしています。とにかく、何かがおかしい。UINavigationController
ビューといくつかのライブラリがある場合でも、空白のページが表示されます。
ストラハトから始めましょう:
私のAppDelegate
では、次のようにタブ バー コントローラーを設定しています。
@interface MYAppDelegate : UIResponder <UIApplicationDelegate>
@property (strong, nonatomic) UIWindow *window;
@property (strong, nonatomic) UITabBarController *tabBarController;
@end
そして、ここに.mファイルがあります:
@implementation MYAppDelegate
@synthesize window = _window;
@synthesize tabBarController = _tabBarController;
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
application.applicationSupportsShakeToEdit = YES;
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
UINavigationController *viewController1 = [[[MYMainViewController alloc] init] initWithNibName: @"MYMainViewController" bundle:nil];
UIViewController *viewController2 = [[[MYPageViewController alloc] init] initWithNibName:@"MYPageViewController" bundle:nil];
UIViewController *viewController3 = [[[MYSearchViewController alloc] init] initWithNibName:@"MYSearchViewController" bundle:nil];
UIViewController *viewController4 = [[[MYPersonViewController alloc] init] initWithNibName:@"MYPersonViewController" bundle:nil];
// Initialize tabBarController and add ViewControllers
self.tabBarController = [[UITabBarController alloc] init];
self.tabBarController.viewControllers = [NSArray arrayWithObjects: viewController1, viewController2,
viewController3, viewController4, nil];
self.window.rootViewController = self.tabBarController;
[self.window makeKeyAndVisible];
return YES;
}
次に、次MYMainViewController
の実装がありますUINavigationController
。
- (void)viewDidLoad {
[super viewDidLoad];
NSLog(@"%@", [self navigationController]); // Logging null
}
私の .xib ファイルにはUINavigationController
and があり、その中にビューがあります。とはいえ、アプリを操作すると、空白のページと無題のナビゲーション バーが表示されます。私は何を間違っていますか?
ビューのコンテンツが表示されたら、戻るボタンを使用して 2 つのビュー コントローラー間を移動したいと考えています。
どんな助けやアプローチも私にとって素晴らしいでしょう。