1

2 つの異なるモーダル ビュー コントローラーにセグエするビュー コントローラーを備えたストーリーボードを使用する iOS アプリがあります。1 つのセグエはボタンによってトリガーされ、もう 1 つのセグエはタイマーによってトリガーされます。ボタンのタッチアップとタイマーが近づきすぎない限り、どちらも正常に機能します。ボタンからのセグエがタイマーからのセグエの直前に発生した場合、ボタンからのセグエは実行されますが、prepareForSegue が呼び出されても、タイマーからのセグエは表示されません。

これが prepareForSegue コードです。

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    if ([[segue identifier] isEqualToString:@"segueFromTimer"]) {        

        // Get destination view
        fromTimerViewController *vcTimer = [segue destinationViewController];

        // do some stuff
        // ...
    }

    if ([[segue identifier] isEqualToString:@"segueFromButton"]) { 

        // Get destination view
        fromButtonViewController *vcButton = [segue destinationViewController];

        // do some stuff
        // ...
     }
}

prepareForSegue にブレークポイントを設定すると、それが id = segueFromTimer で呼び出され、destinationViewController が有効に見えることを確認できますが、segueFromTimer セグエは表示されません。

4

0 に答える 0