2012-04-05 19 views
1

Ich weiß, dass diese Frage unzählige Male gefragt wurde. Aber keiner von ihnen scheint zu arbeiten! Bitte helfen Sie! Ich bin nicht in der Lage, Arrays von einer Klasse zur anderen zu übergeben. Schlag sind meine CodesXcode NSMutableArray von einer Klasse zur anderen

First Class hat ein Array deklariert

#FirstClass.h 

- (void)viewDidLoad 
{ 
testArray = [[NSMutableArray alloc] init]; 
[testArray addObject:@"test"]; 
[testArray addObject:@"test2"]; 
[testArray addObject:@"test3"]; 

//method to pass array 

TableViewController *tvc = [[TableViewController alloc] init]; 
tvc.getData = [[NSMutableArray alloc] init]; 
tvc.getData = testArray; 

NSLog(@"%i", [tvc.getData count]); // returns a value n 

Hier bekomme ich Zahl von 3

} 

TableViewController.h 

- (void)viewDidLoad 
{ 
[super viewDidLoad]; 

NSLog(@"%i", [getData count]); // returns a value n 

Hier bekomme ich 0

//Set the title 
self.navigationItem.title = @"Countries"; 
} 

Ich habe versucht,

FirstClass *fc = [[FirstClass alloc] init]; 
getData = fc.testArray; 

Funktioniert nicht so gut. Ich habe versucht, eine Methode zu schreiben und die Methode aus meiner zweiten Klasse aufzurufen.
Endete mit @interface Fehler.
Sorry, das ist mein erstes Mal auf Ziel c. Am Java ausgebildet.
Bitte helfen!

Antwort

3

Für das zweite Problem, warum die fc.testArray nicht funktioniert ist, dass viewDidLoad wird nur aufgerufen, nachdem die view Eigenschaft aufgerufen wird. (Verzögerte Initialisierung)

So funktioniert es, wenn Sie tun, wie

FirstClass *fc = [[FirstClass alloc] init]; 
fc.view; 
getData = fc.testArray; 
+0

Geck Dank !! Ok eine andere Frage. Ich benutze ein JSON, um mein Array in meiner FirstClass von einer anderen Methode zu füllen. Daher deklariere ich meine Arrays in dieser Methode anstelle von viewOnLoad. Also ... wie löse ich das? – Hexark

+0

Wie wäre es, nur diese Methode aufzurufen: FirstClass * fc = [[FirstClass alloc] init]; getData = [fc anotherMethod]; – skonb

+0

thx für Ihre Hilfe. Was ist, wenn ich mir meine Codes anschaue? http://stackoverflow.com/questions/10027336/xcode-passing-nsmutablearray-from- different-classes so arbeite ich mit meiner Klasse – Hexark

Verwandte Themen