Objective-C - NSArray und Für die loop-Struktur

Arbeit wurde in der Weise, zu lernen, Objective C, aber ich bin jetzt und das hat mich verrückt wurde.

Dies ist mein code:

i=0;
    for (i=0;[photoList count]; i++) {
        NSLog(@"%i",i);
        NSLog(@"%@",[photoList objectAtIndex:i]);
        NSString *fileName = [photoList objectAtIndex:i];
        sendImage = [UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:fileName ofType:nil]];
        UIImageWriteToSavedPhotosAlbum(sendImage,self,@selector(savedPhotoImage:didFinishSavingWithError:contextInfo:),NULL);}

photoList ist nur ein NSArray wie so, außer mit 24 Objekte:

NSArray* photoList = [NSArray arrayWithObjects:@"Photo 1.jpg",
    @"Photo 2.jpg",
    @"Photo 3.jpg",
    @"Photo 4.jpg",nil];

Es funktioniert... Es kopiert die Fotos in der camera roll... und stürzt dann ab mit

2010-07-24 19:34:36.116 iCardz2go Poindexter[29662:207] * Terminating app due to uncaught exception 'NSRangeException', reason: '* -[NSArray objectAtIndex:]: index-24-jenseits der Grenzen [0 .. 23]'

Ich habe versucht, verschiedene Konfigurationen wie

for (i=0;1<23; i++)

nur zu bekommen
2010-07-24 19:51:01.017 iCardz2go Poindexter[29908:207] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '+[NSInvocation invocationWithMethodSignature:]: Signatur der Methode argument nicht nil'

So ist es das Lesen der null-und der übergabe.

Ich weiß, sein gehen zu sein etwas echtes einfach, dass ich vergessen habe. Warum nicht Sie springen aus der Schleife auf Bild 23 (der Graf)?

Ihre Hilfe ist sehr geschätzt!
P

Wie kann der Graf sein 23 wenn gibt es 24 Objekte?
Sie sollten tackle ein tutorial in der Programmiersprache C, da wird es hoffentlich Abdeckung Konstrukte, wie etwa Schleifen. Objective-C ist eine ganz dünne Schicht auf C, so dass Sie sich selbst vertraut mit C wird Ihnen helfen, an Griffe mit Objective-C auch.
Marcelos - Weil ich dachte, ein NSArray von 0 an gezählt... nicht wahr?
Gültige Indizes von 0 bis 23, aber der Graf ist immer noch 24.

InformationsquelleAutor Paul Sommers | 2010-07-24

Schreibe einen Kommentar