私はUITableView
のヘッダーにUICollectionView
を持っています。データがない場合は、collectionViewを削除します。私はprint(data)
のEXC_BREAKPOINTがラインからクラッシュ "self.collectionView.reloadData()
"UICollectionView reloadData - EXC_BREAKPOINT
var reccomend: [JSON]? = []
func loadReccomend(){
YazarAPI.sharedInstance.loadReccomendedArticles({ reccomend in
if let data = reccomend["articles"].arrayValue as [JSON]?{
self.reccomend = data
if (self.reccomend?.count)! < 1 {
self.tableView.tableHeaderView = nil
}else{
self.collectionView.reloadData()
}
}
})
}
func numberOfSectionsInCollectionView(collectionView: UICollectionView) -> Int {
return 1
}
func collectionView(collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
return self.reccomend?.count ?? 0
}
func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {
let cell = collectionView.dequeueReusableCellWithReuseIdentifier("ReccomendCell", forIndexPath: indexPath) as! ReccomendedCollectionViewCell
cell.article = self.reccomend?[indexPath.row]
return cell
}
して結果を取得しています :
[{
"title" : "title0",
"author_email" : null,
"author_id" : 1884,
"read_count" : 0,
"is_favorite" : false,
}, {
"title" : "title1",
"author_email" : null,
"author_id" : 1884,
"read_count" : 0,
"is_favorite" : false,
}]
どのようにcollectionViewをtableViewヘッダとして返すのですか? viewForHeaderInSectionでこれらのケースを処理しましたか? –