0

私は何日も振り返っています。3 つの ViewController の階層があります。

VC1 で開始し、そこから VC2 をロードできます。VC2 では、VC3 をロードできます。

私のナビゲーションは VC1->VC2->VC3 と同じように後方に正常に動作します。

VC3 を使用すると、ユーザーは VC1 に戻ることができます。

VC1がデリゲートになったことをVC3に伝えることができるかどうか疑問に思います。VC2でもいいのですが、VC3で保存したデータをVC1で使いたいです。

4

3 に答える 3

2

あるクラスから別のクラスに値を渡すデリゲートを作成します。次に、VC1 が VC2 から受信し、VC2 が VC3 から受信する VC1 と VC2 の両方にデリゲートを設定します。

次に、VC3 からデリゲートを呼び出し、値を VC2 に渡します。VC2 では、呼び出されたメソッドが VC1 へのデリゲートの呼び出しを実装し、値が vc1 にあります。

VC3-->del-->VC2-->del->VC1
于 2013-04-03T16:39:29.213 に答える
0

VC1 が VC2 のデリゲートである場合、VC2 のデリゲート プロパティを VC3 のデリゲート プロパティに割り当てることができます。

VC3 がナビゲーション スタックにプッシュされる前の VC2 @implementation:

vc3Instance.delegate = self.delegate
于 2013-04-03T16:21:20.297 に答える
0

たとえば、各View Controllerに「master」と呼ばれる弱いプロパティを追加し、それを提示したView Controllerを指すようにすることをお勧めします。これを行うと、次の方法で VC3 から VC1 (およびそのすべてのデータ) に到達できます。

VC1ViewController *vc1 = self.master.master;
于 2013-04-03T16:24:38.940 に答える