0

セグエにアイデンティティ modaltomenu を与えました

モーダルメニュー

私のコードでは、次のようにセグエを呼び出しています。

if([login_status isEqualToString:@"success"]){
            //start the menuviewcontroller
            [self performSegueWithIdentifier:@"modaltomenu" sender:self];

            NSLog(@"segue %@", @"performed");
        }

if ステートメントは常に true です。

ただし、2 番目のビューは読み込まれません。このコードは、最初のビューが読み込まれたときに実行されます。

セグエがロードされないのはなぜですか?

ありがとう!

4

2 に答える 2

1

さらにトラブルシューティングするには、これをそのVCに入れます。

-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
    NSLog(@"segue identififer = %@",segue.identifier);
}

そして、のコードがviewDidLoad期待どおりに実行されていることを確認してください。performSegueそうでない場合は、そのメソッドを呼び出す場所を再考することをお勧めします。

于 2012-07-13T15:42:17.777 に答える
1

あなたは、最初のビューが読み込まれたときにコードが実行されると言ったので、それが viewDidLoad メソッドにあると仮定するのは正しいですか? その場合は、if ステートメントをビュー コントローラーのライフ サイクルの viewDidAppear メソッドに移動してみてください。ViewDidLoad は通常 1 回だけ発生しますが、viewDidAppear はビューが画面に表示されるたびに呼び出されます。だから、それは次のようになります...

- (void)viewDidAppear:(BOOL)animated {
    [super viewDidAppear:YES];
    if([login_status isEqualToString:@"success"]){
        //start the menuviewcontroller
        [self performSegueWithIdentifier:@"modaltomenu" sender:self];

        NSLog(@"segue %@", @"performed");
    }
}
于 2012-07-13T15:30:18.330 に答える