indexPath Wert der UICollectionView

Wenn mit einem UICollectionView, ich bin ratlos, mit immer den indexPath Wert der didSelectItemAtIndexPath Methode.

Ich bin mit dem folgenden code-Zeile in die didSelectItemAtIndexPath Methode:

//FileList is an NSArray of files from the Documents Folder within my app.
//This line gets the indexPath of the selected item and finds the same index in the Array
NSString *selectedItem = [NSString stringWithFormat:@"%@",[FileList objectAtIndex:indexPath.item]];

//Now the selected file name is displayed using NSLog
NSLog(@"Selected File: %@", selectedItem);

Das problem ist, dass die indexPath gibt immer 0 zurück, (siehe code unten) und als Ergebnis nur das erste Element in der FileList NSArray ist immer ausgewählt.

Ich habe versucht, verschiedene Parameter wie

  • indexPath.row
  • indexPath.item
  • und einfach nur indexPath

ALLE diese geben den Wert 0 in den folgenden NSLog-Anweisung:

NSLog(@"index path: %d", indexPath.item); //I also tried indexPath.row here

Vielleicht bin ich auch nur mit der Formatierung der NSString falsch, aber ich glaube nicht, dass dies der Fall ist, da es keine Warnungen und ich habe versucht die Formatierung der es anders als an anderen stellen.

Warum die indexPath immer 0 zurück?

Jede mögliche Hilfe würde geschätzt! Danke!

  • Bitte zeigen Sie, wie Sie format der Zeichenketten für NSLog
  • .item ist die entsprechende Eigenschaft hier, aber funktional ist das nicht anders zu .row. Sie müssen mehr zeigen, - wie Sie wissen, ist es null? Was ist FileList?
  • Ich habe bearbeitet die Frage, und enthalten, wie ich formatieren den string für NSLog und ich habe geklärt, was FileList ist (bitte Lesen Sie code auskommentiert)
  • Dein log ist wohl nicht das problem, aber es ist übermäßig kompliziert. Nur: NSLog(@"IndexPath: %d",indexPath.Zeile);
  • Ich habe vereinfacht das log-Anweisung aus, aber meine Frage nicht zu tun haben mit NSLog. Ich würde gerne wissen, warum die indexPath 0 zurück.
  • Die Frage bearbeitet wurde. Hat jemand irgendwelche Ideen auf diesem?
  • Können Sie die frame-der Blick und die collectionViewLayout sizeForItemAtIndexPath, ich hatte dasselbe Problem, wo ich nicht Bearbeiten Sie die Werte entsprechend der Größe der meine benutzerdefinierte Zellen.
  • Diese Frage gelöst worden. Meine Frage hier: stackoverflow.com/questions/12608896/... beschreibt das problem, das ich hatte. Die Kommentare auf die akzeptierte Antwort erklären, warum das problem auftrat.
  • seien Sie gewarnt, dass die akzeptierte Antwort auf diese Frage fördert WIRKLICH schlechtes design.

InformationsquelleAutor Sam Spencer | 2012-10-06
Schreibe einen Kommentar