2011-01-17 15 views
0

Ich habe Probleme mit dem Hinzufügen von Objekten zu NSMutableArray * -Array.Probleme mit dem Hinzufügen von Objekten zu NSMutableArray

// Controller.m 
#import "Controller.h" 
@implementation Controller 
- (void)parser:(NSString *)string{ 
    [array addObject:string]; 
    NSLog(@"answerArray(1): %@",[array objectAtIndex:1]); 
    [array retain]; 
} 
@end 

// Controller.h 
#import <Foundation/Foundation.h> 
@interface Controller : NSObject { 
    NSMutableArray *array; 
} 
- (void)parser:(NSString *)string; 
@end 

NSLog (@ "answerArray (1):% @", [array objectAtIndex: 1]);

Ergebnisse: answerArray (1): (null)

+0

Was ist das Problem eigentlich? Was ist die Antwort? – taskinoor

+0

initialisieren Sie das Array? – Paul

Antwort

1

Zunächst einmal, Sie über Beibehaltung des Arrays.

Zweitens haben Sie nicht den Code für die Initialisierung des Arrays zur Verfügung gestellt, also denke ich, es ist nicht zugeordnet und initialisiert. Dies wird dazu führen, dass der Code ein Null-Objekt meldet und somit nil zurückgibt.

Sie sollten eine init Methode für das Controller Objekt erstellen und ein neues NSMutableArray Objekt zuweisen (und bewahren Sie sie).

Auch eine ordnungsgemäße dealloc, um das Array freizugeben. Hier

+0

Guter Anruf! Vielen Dank! – nebulus

0

ist die Methode, die ich auf Controller-Klasse hinzugefügt:

- (id)init { 
    self = [super init]; 
    if(self){ 
     array = [[NSMutableArray alloc] init]; 
    } 
    return self; 
} 
- (void)dealloc { 
    [array release]; 
    [super dealloc]; 
} 
Verwandte Themen