0

親ビューと子ビューがあります。子ビューにはNSMutableDictionaryがあり、それに値を追加します。その後、親ビューに戻り、子ビューに追加した値を取得したい場合、誰でもコードで記述できます。何か案が??

4

3 に答える 3

0

「ParentView」で「ChildView」のオブジェクトを作成し、子オブジェクトを使用して NSMutableDictionary にアクセスします。

例えば:

//ParentViewController.m
ChildViewController *cvc = [[ChildViewController alloc]init];
NSDictionary *dict = cvc.myDict;
于 2012-09-18T10:11:31.997 に答える
0

ビューが実行ループにある間のみ、iVar にアクセスできます。割り当てが解除されると、iVar も割り当てが解除されます。

あなたがしようとしていることを達成するための多くの方法があります。

1 つの方法は、グローバル変数を App Delegate に格納することです。これは、すべてのビューとアプリケーション実行全体からアクセスできます。

別のアプローチは、変数をグローバルにアクセス可能にして NSNotificationCenter を使用し、通知を購読する必要がない場合です。

2番目のアプローチは、私によるこのSOの回答で説明されています

基本的に、userInfo には任意の値を渡すことができるため、この場合、次のように Dictionary を渡すことになります。

[[NSNotificationCenter defaultCenter] postNotificationName:@"myNotification" object:self userInfo:MyDictionary];
于 2012-09-18T10:11:48.303 に答える
0

parentView にプロパティを作成します。

そして、以下のような子ビューコード。

((parentView*)childView.superView).dic = dic;

お役に立てますように。

于 2012-09-18T10:10:48.893 に答える