UICollectionView Как найти строку, в которой ячейка заканчивается - PullRequest
0 голосов
/ 13 июня 2018

Итак, у меня есть приложение tvOS, где у меня есть UICollectionView.Я могу использовать следующий обратный вызов делегата для IndexPath следующей выделенной ячейки.

override func collectionView(didUpdateFocusIn context: ...)

В CollectionView есть один раздел и n чисел, попадающих в него.Итак, когда я получаю IndexPath [0,8], все, что мне говорит, это то, что это 9-й элемент слева.Но в первом ряду всего 8 ячеек, поэтому в действительности это первый элемент слева от второго ряда.

Как определить, в какой строке он фактически отображается?

1 Ответ

0 голосов
/ 13 июня 2018

Можете ли вы показать свой код, поведение и желаемое поведение?Также поможет снимок экрана.

Если я правильно понимаю ваш вопрос ...

Что определяет строку, в которой отображается ячейка, это следующие факторы: 1. Размер представления 2. Размер ячейки 3.collectionViewLayout: UICollectionViewLayout, минимумInteritemSpacingForSectionAt 4. Пространство между каждой ячейкой

Например, если у вас книжная ориентация, с шириной просмотра 800 и шириной 8 ячеек по 100 каждая, и пространство между каждой ячейкой равно 10ваша восьмая ячейка будет находиться во второй строке.

Одним из решений является учет ширины ячейки на основе (view.frame.width / numOfCells в каждой строке) и учет пространства между каждымклетка.

...