最初の4画面にタブバーがないアプリを作成しましたが、その後は各画面にタブバーがあります。そこで、各nibファイルにタブバーを追加しました。
タブバーを実装して機能させるにはどうすればよいですか。
助けて!!
最初の4画面にタブバーがないアプリを作成しましたが、その後は各画面にタブバーがあります。そこで、各nibファイルにタブバーを追加しました。
タブバーを実装して機能させるにはどうすればよいですか。
助けて!!
コードを見ないとどこでエラーが発生したかを確認するのは難しいので、開発センターに問い合わせることをお勧めします:)
didFinishLaunching で tabBarController を作成しますが、TabBar なしで最初の 4 つの画面を表示した後にのみ表示します。これはデフォルトの didFinishLaunching で、標準の TabBar アプリ テンプレートを選択したときに Xcode によって生成されます。
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:
(NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
// Override point for customization after application launch.
UIViewController *viewController1 = [[FirstViewController alloc] initWithNibName:@"FirstViewController" bundle:nil];
UIViewController *viewController2 = [[SecondViewController alloc] initWithNibName:@"SecondViewController" bundle:nil];
self.tabBarController = [[UITabBarController alloc] init];
self.tabBarController.viewControllers = @[viewController1, viewController2];
self.window.rootViewController = self.tabBarController;
[self.window makeKeyAndVisible];
return YES;
}
ここで、次の行を置き換える必要があります。
self.window.rootViewController = self.tabBarController;
コントローラーを表示する行で。このようなもの:
LoginViewController *loginViewController = [[LoginViewController alloc] initWithNibName:@"LoginViewController" bundle:nil];
loginViewController.delegate = self;
self.window.rootViewController = loginViewController;
次に、最後の画面を削除してタブバーを表示したい場合は、次のように記述します。
AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
appDelegate.window.rootViewController = self.tabBarController;
主なアイデアは、アプリ ウィンドウの rootViewController を変更するだけです。