- Вы создаете представление, которое подклассирует представление коллекции, и настраиваете его методы по умолчанию (а также другие методы, которые вы хотите использовать).Я назову его CollectionViewExample.swift
инициализируйте его как требуется:
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
guard let view = loadViewFromNib() else { return }
view.frame = self.bounds
self.addSubview(view)
contentView = view
}
включите этот метод, чтобы загрузить его из пера во время инициализации:
func loadViewFromNib() -> UIView? {
let bundle = Bundle(for: type(of: self))
let nib = UINib(nibName: nibName, bundle: bundle)
return nib.instantiate(withOwner: self, options: nil).first as? UIView
}
переопределите этот метод для дополнительных конфигураций, которые вы можете пожелать
override func layoutSubviews() {
....
}
Создайте .xib и сделайте его класс тем, который вы создали выше.Я назову его CollectionViewExample.xib
На вашей раскадровке в любом контроллере представления вы можете теперь добавить представление и сделать его собственный класс из CollectionViewExample.swift.
В любом файле viewcontroller.swift вы теперь можете сказать var/let collectionViewExample: CollectionViewExample!
и использовать его в любом месте, где пожелаете.