gpt4 book ai didi

ios - 在 UICollectionView (SWIFT) 中设置默认单元格?

转载 作者:行者123 更新时间:2023-11-30 12:19:57 30 4
gpt4 key购买 nike

我是一个 Swift 初学者,试图实现一种在应用程序首次启动时在 CollectionView 中设置默认单元格的方法。我已经重写了“isSelected”方法,以图形方式在屏幕上显示所选单元格,例如;边框颜色等...

到目前为止,我的方法(正确与否)是在“viewDidAppear”方法中调用“didSelectItemAt”方法。

我知道“didSelectItemAt”方法需要 CollectionView 作为其第一个参数,但无论我在“viewDidAppear”内调用该方法时将什么作为第一个参数,似乎都不起作用。

有什么想法吗?

extension DrinkMenuViewController: UICollectionViewDelegate, UICollectionViewDataSource, UICollectionViewDelegateFlowLayout {

func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
return imageArray.count
}

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

cell.imgDrinkType.image = imageArray[indexPath.row]
cell.lbDrinkType.text = drinkTypeArray[indexPath.row]

return cell
}

func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "DrinkTypeImageCollectionViewCell", for: indexPath) as! DrinkTypeImageCollectionViewCell

cell.isSelected = true

print("selected cell: ", indexPath)
}

override func viewDidAppear(_ animated: Bool) {
let indexPathForFirstRow = IndexPath(row: 0, section: 0)

collectionView(<#T##collectionView: UICollectionView##UICollectionView#>, didSelectItemAt: indexPathForFirstRow)

print (indexPathForFirstRow)
}
}

最佳答案

您可能要求:pre select/highlight UICollectionViewCell on first load of view

试试这个:

override func viewWillAppear(_ animated: Bool) {
let selectedIndexPath = IndexPath(item: 0, section: 0)
collectionView.selectItem(at: selectedIndexPath, animated: false, scrollPosition: .left)
}

关于ios - 在 UICollectionView (SWIFT) 中设置默认单元格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44916456/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com