我试图弄清楚如何捕获集合视图的当前索引路径。

我正在使用水平流,并且已经说明了以下内容:

  func numberOfSections(in collectionView: UICollectionView) -> Int {
        return 1
    }
    func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
        return 3
    }


有三个预定义的单元格,我希望相应地更改三个集合视图单元格中每个单元格上的text / UI元素。我该如何实现?我真的很努力,因为目前我正在3个单元格中充满相同的数据。这是预期的。

  func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {

               let cell = detailsCollectionView.dequeueReusableCell(withReuseIdentifier: "DetailsCollectionViewCell", for: indexPath) as! DetailsCollectionViewCell
                cell.layer.shadowRadius = 1
                cell.layer.shadowOpacity = 0.1
                cell.layer.shadowOffset = CGSize(width: 2.5, height: 5)

                return cell
        }
    }
}


但实质上,我希望执行以下伪代码:

    if cell.indexPath == 0 {
      label.text = "This is the first cell"

    } else if cell.indexPath == 1 {
     label.text = "This is the second cell"

    } else if cell.indexPath == 2 {
     label.text = "This is the third cell"
   }
}


抱歉,这是一个愚蠢的问题。

感谢您的时间。

最佳答案

您应该比较itemindexPath参数的cellForItemAt属性。

if indexPath.item == 0 {
    //first item
}

关于ios - UICollectionView-查找当前索引路径并更改值/数据,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46733723/

10-09 02:32