Sid*_*Sid 2 ios cocoapods swift jtapplecalendar
我在尝试加载项目时收到此错误消息
由于未捕获的异常'NSInternalInconsistencyException'而终止app,原因:'无法使类型的视图出列:具有标识符CustomCell的UICollectionElementKindCell - 必须为标识符注册nib或类或在故事板中连接原型单元'
我的代码是:
extension ViewController: JTAppleCalendarViewDelegate, JTAppleCalendarViewDataSource {
func configureCalendar(_ calendar: JTAppleCalendarView) -> ConfigurationParameters {
formatter.dateFormat = "yyyy MM dd"
formatter.timeZone = Calendar.current.timeZone
formatter.locale = Calendar.current.locale
let startDate = formatter.date(from: "2017 01 01")!
let endDate = formatter.date(from: "2017 12 31")!
let parameters = ConfigurationParameters(startDate: startDate, endDate: endDate)
return parameters
}
func calendar(_ calendar: JTAppleCalendarView, cellForItemAt date: Date, cellState: CellState, indexPath: IndexPath) -> JTAppleCell {
let cell = calendar.dequeueReusableJTAppleCell(withReuseIdentifier: "CustomCell", for: indexPath) as! CustomCell
cell.dateLabel.text = cellState.text
return cell
}
}
Run Code Online (Sandbox Code Playgroud)
请帮我调试这个问题.谢谢.
编辑:我已添加单元格的标识符,但仍然存在错误.
这是因为你还没有注册你的xib UICollectionView.如果您使用的UICollectionViewCell是Xib,则必须先注册.
In viewDidLoad:
Run Code Online (Sandbox Code Playgroud)
写下来:
collectionView.register(UINib(nibName: "name", bundle: nil), forCellWithReuseIdentifier: "cellIdentifier")
Run Code Online (Sandbox Code Playgroud)
在viewDidLoad方法中:您必须使用collectionView对象注册自定义单元类/ xib名称.
如果您只有类自定义类,则按以下方式注册(无xib文件)
collectionView.register(CustomCell.self, forCellWithReuseIdentifier: "cellId")
Run Code Online (Sandbox Code Playgroud)
如果您同时拥有类和xib文件,那么您可以通过这种方式注册
collectionView.register(UINib(nibName: "CustomCell", bundle: nil), forCellWithReuseIdentifier: "cellId")
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13261 次 |
| 最近记录: |