【Xcode 5】複数のストーリーボード間で画面遷移させる方法

公開日: : iOSアプリ開発

今日は、ストーリーボードから他のストーリーボードへ画面遷移させる方法を紹介します。

    

プロジェクトにストーリーボードを追加する

左サイドバーでメニューを表示して「New File…」を選択します。

    

左のリストから「User Interface」を選択し、右のアイコン一覧から「Storyboard」を選択します。ここでは「Sub.storyboard」という名前で保存しました。

    

ストーリーボードに画面とボタンを配置する

ここでは、1つ目のストーリーボードにViewController(赤)を1つ置き、そこにボタンを1つ配置。2つ目のストーリーボードにもViewController(緑)を1つ置いて、ボタンを1つ配置します。

    

赤い画面のボタンがタップされた時のアクションを作成

1つ目のストーリーボードに置いているボタンのアクションを作成し、以下のようなコードを記述します。これで2つ目のストーリーボードのイニシャルビューコントローラー(矢印が付いているビューコントローラー)に遷移させることができます。

- (IBAction)pressButton:(id)sender {
    UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Sub" bundle:nil];
    id greenViewController = [storyboard instantiateInitialViewController];
    [self presentViewController:greenViewController animated:YES completion:nil];
}

    

ちなみにストーリーボード上で「Storyboard ID」を設定しておけば、イニシャルビューコントローラー以外にも遷移させることができます。

- (IBAction)pressButton:(id)sender {
    UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Sub" bundle:nil];
    id greenViewController = [storyboard instantiateViewControllerWithIdentifier:@"GreenViewController"];
    [self presentViewController:greenViewController animated:YES completion:nil];
}

    

緑の画面から赤い画面へUnwind Segueで戻る

2つ目のストーリーボードから1つ目のストーリーボードへは、通常と同じでUnwind Segueを使って遷移させることができます。

    

@akio0911はこう思った。

ストーリーボードに画面が増えてきた場合は、複数のストーリーボードに分割するのもいいかもしれませんね。

    

関連記事

サンフランシスコのピア39にあるチャウダーズでクラムチャウダーを食す!

アップルの開発者向けイベント「WWDC2014」に参加するため

ミスドのカルピスドーナツとカルピスポンデリングを食べてみた!

ミスドで期間限定のカルピスコラボ商品「カルピスドーナツ」と「カルピ

十三カレー計画で牛すじカレーネギのせを食す!(大阪・十三)

「iPhoneアプリ開発キャンプ@大阪」のランチで、十三カレー計画

大阪・難波の加寿屋 法善寺でかすうどんを食す。ランチタイムはおにぎり2個まで無料!

大阪・難波の加寿屋 法善寺 (かすうどん KASUYA)で、かす

ライブドアブログで運営していた「あきお商店」を「卵は世界である」に改名しました

少し前からライブドアブログで「あきお商店」というブログをやって

→もっと見る

PAGE TOP ↑