我想添加从json获取的数组中的标题但是标题只显示最后一个元素而不是其余元素
这是代码
func collectionView(_ collectionView:UICollectionView,viewForSupplementaryElementOfKind kind:String,at indexPath:IndexPath) - > UICollectionReusableView { 让sectionHeaderView = collectionView.dequeueReusableSupplementaryView(ofKind:kind,withReuseIdentifier:" sectionHeaderIdentifier",for:indexPath)as! SectionHeaderReusableView
for i in 0..<sectionNames.count
{
sectionHeaderView.sectionHeader.text = sectionNames[indexPath[i]]
}
return sectionHeaderView
}
请提前帮助谢谢!
答案 0 :(得分:0)
最后,在您的UICollectionViewController代码中,添加一个函数:
override func collectionView(collectionView: UICollectionView, viewForSupplementaryElementOfKind kind: String, atIndexPath indexPath: NSIndexPath) -> SectionHeaderCollectionReusableView
{
let header = collectionView.dequeueReusableSupplementaryViewOfKind(UICollectionElementKindSectionHeader, withReuseIdentifier: "SectionHeader", forIndexPath: indexPath) as! SectionHeaderCollectionReusableView
header.headerLabel.text = "YOUR_HEADER_TEXT"
//You can add elements to view instead of just a label
let view: UIView(frame: CGRect(0,0,200,100))
view.backgroundColor = .red
return header}
答案 1 :(得分:0)
内部给出的for循环将一直迭代到最后一个元素,因此根据发布的代码,总是最后一个元素只显示。
因此,请尝试删除for循环,并仅在当前索引处加载sectionNames。