Одно скорее всего входит Foundation, другое в UIKit
Вопрос в том что использовать collectionView?
и то и другое это UIKit. сам IndexPath определен в Foundation, однако его row и item - в UIKit extension IndexPath { /// Initialize for use with `UITableView` or `UICollectionView`. public init(row: Int, section: Int) /// Initialize for use with `UITableView` or `UICollectionView`. public init(item: Int, section: Int) /// The section of this index path, when used with `UITableView` or `UICollectionView`. /// /// - precondition: The index path must have at least one element. public var section: Int /// The row of this index path, when used with `UITableView`. /// /// - precondition: The index path must have exactly two elements. public var row: Int /// The item of this index path, when used with `UICollectionView`. /// /// - precondition: The index path must have at least one element (to get), or exactly two elements (to set). public var item: Int }
в цитате выше в описании написано. row для table, item для collection
Т.е. для коллекции row не работает?
Все верно, не так выразился) UIKit включает Foundation. Из- за не смог использовать в пакете item. Использовал ?first
в NSIndexPath интереснее - у них могут быть разные результаты // Returns the index at position 1. open var row: Int { get } // Returns the index at position 1 if it exists, otherwise returns NSNotFound. @available(iOS 6.0, *) open var item: Int { get }
Okay, nobody has given a good answer here. Inside NSIndexPath, the indexes are stored in a simple c array called "_indexes" defined as NSUInteger* and the length of the array is stored in "_length" defined as NSUInteger. The accessor "section" is an alias to "_indexes[0]" and both "item" and "row" are aliases to "_indexes[1]". Thus the two are functionally identical. ну как я и предполагал - это одно и тоже. но лучше не отходить от рекомендаций документации))
вроде не в окргулении… если это коллекция то row - это строка в коллекции, а item - это номер айтема в коллекции (но могу ошибаться)
Обсуждают сегодня