Краткое изложение проблемы
Я создаю приложение календаря в Swift, и я хотел бы начать с пользовательского интерфейса в этом репо: https://github.com/erichoracek/MSCollectionViewCalendarLayout
Этот репо написан на Objective-C.
Однако я не уверен, как построить поверх этого репозитория Github, используя Swift.
Пример пользовательского интерфейса, который я хотел бы использовать в своем календаре:
Что я пробовал
- Я успешно установил эту библиотеку с CocoaPods.
- Я побежал
$pod install
.
- Я успешно побежал
import MSCollectionViewCalendarLayout
.
- Я добавил новый
CollectionViewController
на свою раскадровку и назначил его своему обычному CalendarViewController
классу
- Я пытался (тупо) с кодом ниже в
class CalendarViewController
, но я получаю это сообщение об ошибке:
"Cannot assign value of type 'MSCollectionViewCalendarLayout.Type' to type 'UICollectionViewLayout'"
override func viewDidLoad() {
super.viewDidLoad()
self.collectionView.collectionViewLayout = MSCollectionViewCalendarLayout
}
Я понимаю, что, вероятно, придется использовать self.collectionView.register(cellClass:forCellWithReuseIdentifier:)
... но как?
В Github есть документация под названием "Использование", но, к сожалению, я все еще не знаю, как его использовать:
Там также есть файл Example.xcworkspace, написанный на Objective-C. Я прошел большую часть этого. Они включают заголовочные файлы (.h) и файлы реализации (.m) для каждого элемента, который они используют.
Здесь есть хороший ответ на касательную проблему: https://stackoverflow.com/a/45540130/3979651,, но это напрямую не решает мою проблему. Я бы хотел import
эту библиотеку Cocoapods вместо того, чтобы писать поверх файлов Objective-C. Но я также не совсем уверен, что это правильный / лучший способ сделать это.
Краткое изложение вопросов
- Как связать мой
CollectionViewController
с MSCollectionViewCalendarLayout
, чтобы он имел такой же интерфейс?
- Как мне использовать
self.collectionView.register(cellClass:forCellWithReuseIdentifier:)
в этом случае?
- Должен ли я писать новый файл для каждого элемента, как в примере? (Ячейка события, заголовок столбца дня и т. Д.)
- Или было бы проще просто скопировать и вставить файлы элементов примера (.h и .m) в мое приложение? Если да, то как мне построить эти файлы?
Чего бы я хотел достичь
Я бы хотел импортировать MSCollectionViewLayout
как библиотеку, прикрепить ее к своему CollectionViewControllers
и создать свою собственную функциональность поверх всего этого, используя Swift.
Спасибо всем заранее! Надеюсь, я смогу зафиксировать правильные ответы здесь в файле README.md репозитория.