Segueを使うと柔軟な画面遷移ができます
iOSアプリの試作品を作るにあたって、StoryBoardでストーリーボード(絵コンテ)を作れるのがandroidにはないiOSの優位点かもしれない。
nib(.xib)からStoryboardになって便利になったのはそれだけではなく、Segueにより柔軟に画面遷移が可能になったことだ。
Segue以前は2つ前の画面に戻ることは難しかったが、Segue後は簡単にできるようになった。
ではSegueの使い方を見ていこう。
Storyboardでは
<通常Segue>
Storyboard上のUIButtonやUIBarButtonitemやGestureRecignizerやUITableCellをタップした時に遷移したいUIViewControllerまでCtrlキーを押しながらドラッグするだけ。
作成したらIDを設定しておきます。
<戻るSegue Unwind Segue>
StoryboardのUIViewControllerのExit
Storyboard上のUIButtonやUIBarButtonitemやGestureRecignizerやUITableCellからExitまでCtrlキーを押しながらドラッグして、タップした時に戻りたいUnwind Segue IDを選択する。
プログラムからは
<遷移元UIViewController>
マニュアルでSegueを実行
[self performSegueWithIdentifier:@"storyboardId" sender:self];
遷移先のUIViewControllerのインスタンス変数に値を渡す
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
設定したSegueを実行したりしなかったりの切り替えをする
- (BOOL)shouldPerformSegueWithIdentifier:(NSString *)identifier sender:(id)sender
<遷移先UIViewController>
Unwind Segue
画面の戻り先となるメソッドを定義する。
- (IBAction)someMethodName:(UIStoryboardSegue *)segue
という形式で好きな名前のメソッドを作る。このメソッドが戻り口になる。
2023年12月 | ||||||
日 | 月 | 火 | 水 | 木 | 金 | 土 |
  |   |   |   |   | 1 | 2 |
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |   |   |   |   |   |   |
iOS
web
?スA?スv?ス?ス?スフ抵ソス?ス??
?スu?ス?ス?スb?スN?ス`?スF?ス[?ス?ス?ス^?ステ搾ソス?スZ?スp
?スV?ス?ス?ス?ス?スミ会ソス
?スT?スE?ス?ス謨ァ?ス?ス
?ス?ス?ス{?スフなりた?ス?ス