6

ViewControllerAとViewControllerBがあります。ViewControllerBからViewControllerAのメソッドを呼び出したい。

ViewControllerAには、次のメソッドがあります。

  -(NSMutableArray*) loadData;

ViewControllerB.hの場合:

 #import "ViewControllerA.h"
  .......
 @property (nonatomic, strong) ViewControllerA * viewControllerA;
 @property (nonatomic, strong) NSMutableArray * mutableArray;

ViewControllerB.mの場合:

self.mutableArray =[viewControllerA loadData];

しかし、メソッドは呼び出していません。なんで?前もって感謝します

4

4 に答える 4

7

あなたは行方不明です

self.

viewControllerBのどこかにある限り:

self.viewControllerA = [[viewControllerA alloc]init];  //or some other initialization occurs...

それから:

self.mutableArray =[self.viewControllerA loadData];

動作します。

于 2012-10-12T09:26:24.060 に答える
4

メソッドloadDataがviewControllerBのヘッダーファイルで指定されていることを確認してください。

- (void)loadData;

その後、メソッドloadDataを呼び出すことができます。

[viewControllerA loadData];
于 2012-10-12T09:38:24.560 に答える
0

viewControllerAは、[viewControllerA loadData]を呼び出す前にViewControllerBに割り当てられますか?

于 2012-10-12T09:23:59.920 に答える
0

コントローラAからコントローラBを押しながら、指定するだけです

viewControllerB.viewControllerA = self;
[self.navigationController pushViewController:viewControllerB animated:YES];

次に、BからメソッドAを呼び出します。直面した問題は、割り当てがなく、Bで作成した「viewControllerA」の宣言だけが原因です。

于 2012-10-12T09:24:03.880 に答える