Skip to content →

Storyboardで画面間のデータ受け渡しをする。

Storyboardを使った場合の画面移動で、データを受け渡ししたい場合の方法についての解説です。

1.StoryboardのIdentifierに名前をつける。

2.prepareForSegueをオーバーライドする

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{

    if ([[segue identifier] isEqualToString:@"Identifierにつけた名前"]) {
        PlayViewController *viewController = (PlayViewController*)[segue destinationViewController];
        viewController.mode =@"受け渡す値";
    }

}

Controllerの部分は適切なものに変更して下さい。これでデータの受け渡しが出来ます。

条件によって画面移動させるかどうか判別

Storyboardの画面移動でpushを選択して、Identifierをつけておきます。

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{

    if ([[segue identifier] isEqualToString:@"Identifierにつけた名前"]) {
        PlayViewController *viewController = (PlayViewController*)[segue destinationViewController];
        [self presentModalViewController:viewController animated:YES];
    }

}

自前でpresentModalViewControllerを使って、移動させることが出来ます。

Published in ビジネスハック 開発奮闘記