Как мы узнаем конкретный элемент в методе cellForRow, когда используется композиционный макет?IOS

Программируем под IOS
Ответить
Гость
 Как мы узнаем конкретный элемент в методе cellForRow, когда используется композиционный макет?

Сообщение Гость »


Я создал представление коллекции с композиционным макетом. Ниже приведен код, который я использовал для создания макета.

func getCompositionalLayout() -> UICollectionViewCompositionalLayout { let item = NSCollectionLayoutItem(layoutSize: NSCollectionLayoutSize(widthDimension: .fractionalWidth(1), heightDimension: .fractionalHeight(1/3))) item.contentInsets = NSDirectionalEdgeInsets(верх: 1, впереди: 1, внизу: 1, в конце: 1) //--------- Группа 1 ---------// let group1Item1 = NSCollectionLayoutItem (layoutSize: NSCollectionLayoutSize (widthDimension: .fractionalWidth(1/2), heightDimension: .fractionalHeight(1))) group1Item1.contentInsets = NSDirectionalEdgeInsets (верхнее: 1, ведущее: 1, нижнее: 1, завершающее: 1) letnestedGroup1Item1 = NSCollectionLayoutItem(layoutSize: NSCollectionLayoutSize(widthDimension: .fractionalWidth(1), heightDimension: .fractionalHeight(1/2))) nestedGroup1Item1.contentInsets = NSDirectionalEdgeInsets(верх: 1, впереди: 1, внизу: 1, в конце: 1) letnestedGroup2Item1 = NSCollectionLayoutItem(layoutSize: NSCollectionLayoutSize(widthDimension: .fractionalWidth(1/2), heightDimension: .fractionalHeight(1))) nestedGroup2Item1.contentInsets = NSDirectionalEdgeInsets (сверху: 1, впереди: 1, внизу: 1, в конце: 1) letnestedGroup2 = NSCollectionLayoutGroup.horizontal(layoutSize: NSCollectionLayoutSize(widthDimension: .fractionalWidth(1), heightDimension: .fractionalHeight(1/2)), подэлементы: [nestedGroup2Item1]) letnestedGroup1 = NSCollectionLayoutGroup.vertical(layoutSize: NSCollectionLayoutSize(widthDimension: .fractionalWidth(1/2), heightDimension: .fractionalHeight(1)), подэлементы: [nestedGroup1Item1,nestedGroup2]) let group1 = NSCollectionLayoutGroup.horizontal(layoutSize: NSCollectionLayoutSize(widthDimension: .fractionalWidth(1), heightDimension: .fractionalHeight(1/3)), подэлементы: [group1Item1,nestedGroup1]) //--------- Группа 2 ---------// let group2Item1 = NSCollectionLayoutItem (layoutSize: NSCollectionLayoutSize (widthDimension: .fractionalWidth(1/3), heightDimension: .fractionalHeight(1))) group2Item1.contentInsets = NSDirectionalEdgeInsets (верхнее: 1, ведущее: 1, нижнее: 1, завершающее: 1) let group2 = NSCollectionLayoutGroup.horizontal(layoutSize: NSCollectionLayoutSize(widthDimension: .fractionalWidth(1), heightDimension: .fractionalHeight(1/3)), подэлементы: [group2Item1]) //--------- Группа контейнеров ---------// letContainerGroup = NSCollectionLayoutGroup.vertical(layoutSize: NSCollectionLayoutSize(widthDimension: .fractionalWidth(1), heightDimension: .absolute(600)), подэлементы: [item, group1, group2]) пусть раздел = NSCollectionLayoutSection (группа: контейнерная группа) пусть макет = UICollectionViewCompositionalLayout (раздел: раздел) возвратный макет } с этим блоком кода представление моей коллекции выглядит так

введите здесь описание изображения

Теперь мой вопрос: как мне узнать RED CELL каждый раз, когда он встречается в методе cellForItem, чтобы я мог показывать в нем различное содержимое. (так же, как Instagram показывает видео в ячейке большего размера на странице поиска).

Не могу идентифицировать красную ячейку (она находится в группе 1 с именем group1Item1)
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»