Что такое форма collectionView indexPathForSelectedRow?
Я пытаюсь создать переменную "indexx", которая будет переходить к моему следующему tableController. indexx будет хранить indexPath выбранной ячейки из моего collectionView, однако я не уверен, какое свойство использовать. Я гораздо лучше знаком со свойствами tableController, поэтому мне трудно найти удачное решение для этого фрагмента кода. Вы случайно не знаете мою ошибку?
В качестве краткого замечания - foodcv - это мой collectionView, а numberr - это переменная во втором контроллере назначения.
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if let destViewController = segue.destination as? foodtable {
let indexx = self.foodcv.indexPath(for: foodcell)
destViewController.numberr = indexx
}
}
let numberr : IndexPath = []
2 ответа
Может быть, уже слишком поздно, но здесь вы идете
Swift 4
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if let destViewController = segue.destination as? foodtable {
let indexPaths : NSArray = foodcv.indexPathsForSelectedItems! as NSArray
let indexx : IndexPath = indexPaths[0] as! IndexPath
destViewController.numberr = indexx[selectedindexPath.row]
}
}
Используйте эту модифицированную реализацию,
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if let destViewController = segue.destination as? foodtable {
let indexx = self.foodcv.indexPathForCell(sender as! UICollectionViewCell)
destViewController.numberr = indexx
}
}