Отключите другой вид коллекции от использования метода sizeForItemAt - PullRequest
0 голосов
/ 03 мая 2018

У меня есть 2 вида коллекции, один вид коллекции использует sizeForItemAt для изменения размера ячейки, и другой вид коллекции не должен использовать этот метод.

Моя проблема заключается в том, как отключить / запретить использование другого представления коллекции с помощью метода sizeForItemAt. * ​​1003 *

Ответы [ 2 ]

0 голосов
/ 03 мая 2018

Если вы хотите распознать, какой вид коллекции будет затронут методом sizeForItemAt, вы можете просто использовать оператор === для этого.

Пример:

func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
    if collectionView === firstCollectionView {
        // here it should returns the desired size
        return CGSize(width: ..., height: ...)
    }

    // here it should returns the default size
    return CGSize(width: ..., height: ...)
}

Или (более короткая версия):

return collectionView === firstCollectionView ? CGSize(width: ..., height: ...) : CGSize(width: ..., height: ...)
0 голосов
/ 03 мая 2018

Введите код ниже в вашем методе размера ячейки

func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
    //return CGSize.init(width: self.view.frame.width / 3 - 30, height: self.view.frame.width / 3 - 30)
    if collectionView == myfirstCollectionview
    {
        //For FirstCollectionView
        return CGSize.init(width: 90, height: 90)
    }
    else
    {
        //For SeondCollectionView
      return CGSize.init(width: 90, height: 90)
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...