Hallo Forum,
und zwar habe ich gerade ein kleines Problem, was hier bestimmt schon tausendmal besprochen wurde. Google hat mir aber gerade nicht sonderlich geholfen.
Ich habe nämlich einen NSMutableArray, den ich in viewDidLoad bestimme. Allerdings gibt Xcode mir in der Konsole dann (null) aus. Ich hab absolut keine Ahnung was ich falsch gemacht haben soll, denn ich habe noch einen Array, den ich genauso mach und der funktioniert auch gut.
In meinem Headerfile habe ich das hier:
(Sieht so komisch aus, weil die Codetags total verbuggt sind).
In meinem implementation-file synthesize ich den Array dann natürlich.
Dann ist das noch in meiner viewDidLoad:
So und der Log unten gibt mir dann mutableArray: (null) aus. Aber eigentlich müsste es ja so sein: mutableArray: { }. Der einzige Unterschied zu dem anderen Array ist, dass dieser am Anfang einfach auf nil gesetzt wird und nicht mit noch nicht vorhandenen Daten aus den UserDefaults geladen wird. Aber das dürfte ja eigentlich keinen Unterschied machen?
EDIT: Es lag tatsächlich daran, dass ich den Array direkt mit den UserDefaults gefüllt habe.
Nur will ich direkt am Anfang die Daten aus den Defaults in den Array packen. Wie kann ich jetzt checken, ob die UserDefaults leer sind oder schon etwas enthalten. Wenn sie etwas enthalten, müsste es ja mit dem füllen gehen, wenn nicht lässt man es leer.
EDITEDIT: Okay habs damit gelöst:
Sorry!! :pinch:
und zwar habe ich gerade ein kleines Problem, was hier bestimmt schon tausendmal besprochen wurde. Google hat mir aber gerade nicht sonderlich geholfen.
Ich habe nämlich einen NSMutableArray, den ich in viewDidLoad bestimme. Allerdings gibt Xcode mir in der Konsole dann (null) aus. Ich hab absolut keine Ahnung was ich falsch gemacht haben soll, denn ich habe noch einen Array, den ich genauso mach und der funktioniert auch gut.
In meinem Headerfile habe ich das hier:
(Sieht so komisch aus, weil die Codetags total verbuggt sind).
In meinem implementation-file synthesize ich den Array dann natürlich.
Dann ist das noch in meiner viewDidLoad:
Quellcode
- NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
- if(!mutableArray)
- mutableArray = [NSMutableArray new];
- mutableArray = [NSMutableArray arrayWithCapacity:300];
- //Der NSMutableArray wird mit den Daten aus den UserDefaults geladen, wenn diese leer sind, ist der Array auch leer --> NSLog
- mutableArray = [userDefaults objectForKey:@"KeyUserDefaults"];
- NSLog(@"mutableArray: %@", mutableArray);
So und der Log unten gibt mir dann mutableArray: (null) aus. Aber eigentlich müsste es ja so sein: mutableArray: { }. Der einzige Unterschied zu dem anderen Array ist, dass dieser am Anfang einfach auf nil gesetzt wird und nicht mit noch nicht vorhandenen Daten aus den UserDefaults geladen wird. Aber das dürfte ja eigentlich keinen Unterschied machen?
EDIT: Es lag tatsächlich daran, dass ich den Array direkt mit den UserDefaults gefüllt habe.
Nur will ich direkt am Anfang die Daten aus den Defaults in den Array packen. Wie kann ich jetzt checken, ob die UserDefaults leer sind oder schon etwas enthalten. Wenn sie etwas enthalten, müsste es ja mit dem füllen gehen, wenn nicht lässt man es leer.
EDITEDIT: Okay habs damit gelöst:
Sorry!! :pinch:
Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von johannesm ()