StoryBoard 接続の 3 つのタイプのうち、1 つのタイプは Custom です。開発者はカスタム Segue クラスを継承し、perform メソッドを書き換える必要があります。
- (void)perform{ NSLog(@"使用自定义连接"); [self.sourceViewController presentViewController:self.destinationViewController animated:YES completion:nil];}
実行時の効果は、モーダルタイプの接続を直接使用した場合と同じです:
もちろん、プッシュタイプの接続をカスタマイズすることもできます
もしあなたがページ間でコンテンツが必要な場合は、ページ間の値の転送を実装する必要があります。StoryBoard では、ページの値の転送は prepareForSegue:sender: メソッドを通じて実装されます。まず、接続識別子を 2vc2 に設定します (必要に応じて名前を付けることができますが、コード内の文字列と一致するようにするだけです)
UITextView インスタンスをページ 2 にドラッグし、出力ポート recTextView を関連付けます
ViewController.m に次のコードを追加します:
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{ if ([[segue identifier] isEqualToString:@"2vc2"]) { ViewController2 *vc2 = (ViewController2 *)[segue destinationViewController]; vc2.passText = @"使用prepareForSegue:sender进行页面传值"; }}
- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. _recTextView.text = _passText;}