UICollectionView を使用する場合indexPath
、メソッドの値を取得することに戸惑いdidSelectItemAtIndexPath
ます。
didSelectItemAtIndexPath
メソッドで次のコード行を使用しています。
//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);
問題は、indexPath が常に 0 を返し(以下のコードを参照)、その結果、FileList NSArray の最初の項目のみが選択されることです。
次のようなさまざまなパラメーターを試しました
indexPath.row
indexPath.item
- そしてただただ
indexPath
これらはすべて、次の NSLog ステートメントで値 0 を返します。
NSLog(@"index path: %d", indexPath.item); //I also tried indexPath.row here
たぶん私は NSString を不適切にフォーマットしているだけかもしれませんが、警告がなく、他の場所で別の方法でフォーマットしようとしたので、そうではないと思います。
indexPath が常に 0 を返すのはなぜですか?
どんな助けでも大歓迎です!ありがとう!