Ссылка на UICollectionViewCell, который находится за пределами - PullRequest
0 голосов
/ 15 января 2019

У меня есть collectionView с двумя ячейками. Каждая ячейка соответствует размеру экрана.
В первой ячейке у меня есть несколько кнопок.
Когда я нажимаю кнопку, collectionView прокручивается ко второй ячейке, и в зависимости от того, какую кнопку я нажал, вторая ячейка должна отображать другой вид.

Этот код ссылается на вторую ячейку, когда я нажимаю на кнопку:

if let cell = collectionView.cellForItem(at: secondIndexPath) as? SecondCell {

        // change the view of the cell
         print("Does not execute code")
}

Я полагаю, что cellForItem (at: IndexPath) равен нулю, потому что ячейка выходит за границы.
Но как я могу это исправить?

1 Ответ

0 голосов
/ 15 января 2019

Это

let cell = collectionView.cellForItem(at: secondIndexPath)

возвращает nil, когда ячейка в указанном secondIndexPath не видна, вам нужно изменить модель, и она будет отражена в ячейке, когда она будет показана снова, так как это ячейка 2, затем

let cellModel = arr[1]  // cell 2 of 0 based indexing 
cellModel.someProperty = ///
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...