У меня есть представление коллекции с зарегистрированным заголовком elementKindSectionHeader
.Ячейки в представлении коллекции в настоящее время имеют размер (width: view.frame.width, height: view.frame.height)
для демонстрации.
На данный момент я получаю: (Заголовок включает фотографию обложки и строку меню)
Однако я хочу, чтобы ячейки прокручивались горизонтально, а не вертикально.Я, очевидно, также хочу, чтобы заголовок оставался там, где он есть.У меня уже есть метод referenceSizeForHeaderInSection
, указанный ниже:
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, referenceSizeForHeaderInSection section: Int) -> CGSize {
return .init(width: view.frame.width, height: 300)
}
Это кажется неуместным, когда я изменяю collectionView для горизонтальной прокрутки.Заголовок занимает весь экран и более:
if let layout = collectionViewLayout as? UICollectionViewFlowLayout {
layout.scrollDirection = .horizontal
}
У меня есть отдельный класс заголовка, который отображаетфотография обложки, строка меню и т. д., зарегистрированные как UICollectionReusableView
, и мой вид коллекции использует их следующим образом:
// Register cell classes
self.collectionView!.register(UICollectionViewCell.self, forCellWithReuseIdentifier: cellId)
self.collectionView.register(HeaderView.self, forSupplementaryViewOfKind: UICollectionView.elementKindSectionHeader, withReuseIdentifier: headerId)
self.collectionView.contentInset = UIEdgeInsets(top: 90, left: 0, bottom: 0, right: 0)
self.collectionView?.scrollIndicatorInsets = UIEdgeInsets(top: 90, left: 0, bottom: 0, right: 0)
Я совершенно новичок в использовании области заголовка, подобной этой.Как бы я прикрепил заголовок, как первая фотография, перекрывающая свиток в UICollectionReusableView
?Или есть другой умный способ, которым я могу попробовать?