Ios 集合视图的第一个单元格始终为空

Ios 集合视图的第一个单元格始终为空,ios,swift,uicollectionview,Ios,Swift,Uicollectionview,我在Viewcontroller中有一个自定义集合视图,每当加载集合视图时,我的第一个单元格总是为空。如何删除此空单元格 根据您应该处理的隐藏第一个元素的情况,您可能需要实现两个选项: override func viewDidLoad() { . . . collectionData.remove(at: 0) . . . } 1-如果可以从数据源(collectionDataarray)中删除第一个对象,那么您只需从其中删除第一

我在Viewcontroller中有一个自定义集合视图,每当加载集合视图时,我的第一个单元格总是为空。如何删除此空单元格


根据您应该处理的隐藏第一个元素的情况,您可能需要实现两个选项:

override func viewDidLoad() {
    .
    .
    .

    collectionData.remove(at: 0)

    .
    .
    .
}
1-如果可以从数据源(
collectionData
array)中删除第一个对象,那么您只需从其中删除第一个元素即可:

在视图控制器(
viewDidLoad()
)中,您可以实现:

override func viewDidLoad() {
    .
    .
    .

    collectionData.remove(at: 0)

    .
    .
    .
}
2-如果需要在不删除第一个元素的情况下保持
collectionData
的原样,但它不应显示在UI中,则需要实现
UICollectionViewDataSource
,如下所示:

func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
    // subtract 1
    return collectionData.count - 1
}

func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
    let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "cell", for: indexPath) as! collectionCell

    // add 1 to indexPath.row
    let collectionData = self.collectionData[indexPath.row + 1]  

    cell.NameLbl.text = collectionData["name"] as? String

    return cell

}

这将导致在不编辑
collectionData
数据源数组的情况下按预期显示collection视图。

显示到目前为止尝试过的代码?所有数据都是动态的?显示collectionview数据源逻辑是否检查了数据源?可能是collectionData数组的第一个索引有空字符串。检查它包含的值。@AhmadF如何删除该空数据?