と がUIViewController
ありUITabBarController
ます。
UIViewController
5 つのボタンUITabBarController
があり、5 つのタブがあります。
最初のボタンをタップTabBarController
すると、最初に選択したタブでアプリが表示され、2 番目のボタンをタップTabBarController
すると、2 番目のタブが表示されます...
これを準備するためにModal-segue
、すべてのボタンに使用しました。
すべてがうまく機能します。
ここで、「ホームビューに戻る」アクションを実行するTabBarController
「ホーム」ボタンを(プログラムで)作成する必要があります。UINavigationBar
詳細を編集しました
{下のスクリーンショットを参照}
- 初期 UIViewController
- UITabBarController
- ナビゲーションコントローラー
- UIViewController
1と2の間に 2 つのモーダル セグエがあります(2 つのボタン - 2 つのセグエ)
UIViewControllerの私のprepareForSegueでは:
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
AppDelegate *d = (AppDelegate *)[[UIApplication sharedApplication] delegate];
if ([segue.identifier isEqualToString:@"s1"]) {
d.initialTab = 0;
}
else if ([segue.identifier isEqualToString:@"s2"]) {
d.initialTab = 1;
}
}
UITabBarControllerの私のviewDidLoadでは:
TabController *mainTabController = (TabController *)self;
AppDelegate *d = (AppDelegate *)[[UIApplication sharedApplication] delegate];
[mainTabController setSelectedIndex:d.initialTab];
これは効きます!
しかし、私はホームページに戻る必要があります。したがって、TabBarController の後に NavigationController がある場合、NavigationBar にボタンを作成したいと思います。