3 つの ViewController がある状況があるとします。黄・緑・白のやつ。
黄色と緑の両方を通って白いものに到達できます。詳細については、画像を参照してください。
黄色から白にセグエするとき、セグエの準備をして、NSUinteger jimmy_hendrix 値を 0 に設定します。
緑から白にセグエするとき、セグエの準備をして、NSUinteger jimmy_hendrix 値を 1 に設定します。
白いVCの中にIBActionを作り、BACKボタンを接続しました。そこで、値に応じて、白い VC になってしまったセグエを巻き戻したいと思います。
これは私が使用するコードです:
- (IBAction)goBack:(UIButton *)sender {
switch (_jimmy_hendrix) {
case 0:
[self performSegueWithIdentifier:@"fromYellowToWhite" sender:self];
break;
case 1:
[self performSegueWithIdentifier:@"fromGreenToWhite" sender:self];
break;
}
}
しかし、例外があります:
'Receiver (<WhiteVC: 0x15d8c850>) has no segue with identifier 'fromSuperTraenerToSuperTraenerQuestions
これを明確にするために、使用した VC とセグエに基づいて、実行したいアンワインドが 2 つあるため、[戻る] ボタンから ctrl + ドラッグして終了し、アンワインド セグエ メソッドを選択したことはありません。
これに対する解決策は何ですか?そもそも目的地に到達するために使用した ViewvController に戻るにはどうすればよいですか?
重要: 白から黄、緑まで、新しいセグエを作成して呼び出すことができることを私は知っています。しかし、私はそれを望んでいません..新しいセグエを作成したくありません。既存のものをプログラムで巻き戻したいです。
編集:実際に緑と黄色のVCでアンワインドメソッドを作成したことを忘れていました
-(IBAction)fromYellowToWhite:(UIStoryboardSegue *)segue {
}
-(IBAction)fromGreenToWhite:(UIStoryboardSegue *)segue {
}