次のセットアップでは、Button 1
呼び出しFirst VC
とButton 2
呼び出しSecond VC
現在、次のコードを使用して、 をSecondVC
タップして呼び出しますButton 2
。
MainVC.m
@implementation MainVC()
....
UINavigationController *navController = [self.childViewControllers objectAtIndex:0];
SecondVC *secondVC = [self.storyboard instantiateViewControllerWithIdentifier:@"second"];
[navController pushViewController:secondVC animated:YES];
上記のコードは問題なく表示されますSecondVC
。ただし、First VC
「Second VC」が表示される前に実行する必要があるステートメントがスキップされています。
これらのステートメントをFirst VC
insideで実行します-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
。でNext
Button がタップされるとFirst VC
、すべてのステートメントが実行されます。これは、prepareForSegue
を表示する前にトリガーされるためSecondVC
です。上記のコードを使用する場合、この手順はスキップされます。
追加情報:
A)が、Navigation Controller
私Main VC
のアプリでは、アプリにナビゲーション バーが表示されません。これは、iPhone に 2 つのナビゲーション バーを表示することは HIG に反すると思います。メイン VC を特定するためにここに表示します。
B)ユーザーが入力する FirstVC の textFields があります。コードをコピーするだけで、textFields.text からデータを読み取って保存できますか?
質問:がタップされているときに、どうすれば電話prepareForSegue
をかけることができますか? またはこれに対する別のアプローチはありますか? First VC
Button 2
MainVC