1

viewsに3つあるとしましょうstoryboard

  • ビュー1にはとが含まれてinput fieldbuttonます。
  • ここで、input fieldユーザーは「2+2」に答えます。
  • ビュー2には、「1年生に移動してください」というメッセージが含まれています。
  • ビュー3には、「数学がひどい」というメッセージが含まれています。

ストーリーボードを使用してビュー1ビュー2をリンクしたいのですが、ビュー1でボタンがタッチされたときにロジックを実行したいと思います。

入力フィールドが表示== 4されている場合はビュー2に移動し、そうでない場合はビュー3に移動します。このようなことは可能storyboardingですか?

4

1 に答える 1

5

はい

ストーリーボードで、ViewController1からViewController2にControlキーを押しながらドラッグして、View1からView2へのセグエを作成します。セグエをクリックして、それと識別子(たとえば、view2)を指定します。同じことを行って、ビュー1からビュー3にセグエを作成します(これと識別子view3を指定します)。

次に、view1ビューコントローラコードで、ボタンのIBActionメソッドに次のコードを追加します。

if (input == 4) {
    [self performSegueWithIdentifier: @"view2" sender: self];
} else {
    [self performSegueWithIdentifier: @"view3" sender: self];
}

さらに、view1ビューコントローラーのprepareForSegueメソッドを使用して、宛先ビューコントローラーのプロパティを設定できます。

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    if ([[segue identifier] isEqualToString:@"view2"]) 
    {
        [[segue destinationViewController] setManagedObjectContext:self.managedObjectContext];
        [[segue destinationViewController] setSelectedClient:selectedClient];
        [[segue destinationViewController] setAddNoteViewControllerDelegate:self];
    }
    if ([[segue identifier] isEqualToString:@"view3"]) 
    {
        // set properties for view3 view controller
    }
}
于 2012-01-23T16:55:21.987 に答える