Установить CollectionView как баннер - PullRequest
0 голосов
/ 10 мая 2019

Мне нужно в Collection View на мой взгляд Controller. Один показывает изображение, а другой показывает детали билета. Вот пример изображения.

image

Но я не могу установить правильное ограничение. Это то, что я делаю с кодом.

 let numberOfCells = 9
    let kCellHeight : CGFloat = 104
    let kLineSpacing : CGFloat = 2
    let kInset : CGFloat = 10

func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
        if collectionView == clnView {
            return CGSize.init(width: width, height: height)
        }else {
            return CGSize(width: (UIScreen.main.bounds.width - 2*kInset - kLineSpacing), height: kCellHeight)
        }
    }
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumLineSpacingForSectionAt section: Int) -> CGFloat {
        var size = CGFloat()
        if collectionView == clnView {
            size = kLineSpacing
        }
        return size
    }
 func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, insetForSectionAt section: Int) -> UIEdgeInsets {
        var Insect = UIEdgeInsets()
        if collectionView == clnView {
            Insect = UIEdgeInsets(top: kInset, left: kInset, bottom: kInset, right: kInset)
        }
        return Insect
    }

Но это не отображается должным образом. Смотри

iphone 5s

image

iPhone XR

image

Пожалуйста, объясните правильный путь. Спасибо

1 Ответ

0 голосов
/ 10 мая 2019

Ваш код просто определяет, как элементы располагаются внутри представления коллекции.

Ограничения должны указывать вам, где в родительском представлении коллекции находится представление и насколько широко + высоко.

Вы должны изучить autolayout и сделать это шаг за шагом в вашей раскадровке или в xib для просмотра. При правильном ограничении Y он должен работать как положено. Если вы помещаете view collection + другие вещи в scrollview, следуйте этому ответу .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...