1

2つのシーンを持つアプリを開発しています。あるシーンでは、データを入力するためのUITextFieldと、そのデータを変数に割り当てるための設定ボタンがあります。設定ボタンをクリックするとすぐに2番目のシーンが表示されます。ここで、最初のシーンからこのシーンまでの変数にアクセスしたいと思います。つまり、最初のビューコントローラーから2番目のビューコントローラー(セグエ)までです。

4

2 に答える 2

2

つまり、2つのシーンを使用しています。それらをViewController1およびViewController2と呼びましょう。1から2にデータを送信する場合は、Viewcontroller1.mにViewController2.hを追加します。ViewController1.mで、文字列でテキストフィールド値を取得している場合を考えてみましょうNSString *str;(必ずsegueに名前を付けてください。名前を「hello」としましょう)。ViewContoller2で、と呼ばれる別の変数を初期化しますNSString *str1;。次の方法で変数をViewController2に渡すことができます。

   - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
    {
if ([[segue identifier] isEqualToString:@"hello"])
{
    NSString *str;
    ViewController2 *vc2 = [segue destinationViewController];
    vc2.str1 = str;
}
    }
于 2012-12-31T20:44:28.607 に答える
0

最初のprepareForSegueをオーバーライドすることで、必要な情報を最初から2番目に渡すことができます。宛先コントローラーは、segue.destinationViewControllerを介して参照できます。

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
于 2012-12-31T20:12:26.110 に答える