gpt4 book ai didi

ios - 为 collectionview 声明的数组 null 值可选

转载 作者:行者123 更新时间:2023-11-28 13:45:26 25 4
gpt4 key购买 nike

我创建了一个数组,它是我的 Collection View 的数据。我试图点击 CollectionViewCell 并播放我的数组的文件组件中包含的声音。我不知道如何播放声音,甚至无法开始,因为我的 xcode 项目中的文件为空值。

错误:线程 1: fatal error :在展开可选值时意外发现 nil

如果我不强制解包文件,它会给我一个错误...

class ViewController: UIViewController {

let sounds : [Sounds] = [Sounds(statement: "A", file: Bundle.main.url(forResource: "A", withExtension: "aifc")!),
Sounds(statement: "B", file: Bundle.main.url(forResource: "B", withExtension: "aifc")!),
Sounds(statement: "C", file: Bundle.main.url(forResource: "C", withExtension: "aifc")!),
Sounds(statement: "D", file: Bundle.main.url(forResource: "D", withExtension: "aifc")!)]

}

extension ViewController: UICollectionViewDelegate, UICollectionViewDataSource {
func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
return sounds.count
}

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

let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "soundCell", for: indexPath) as! CollectionViewCell
let Soundz = sounds[indexPath.item]
cell.cellLabel.text = Soundz.statement

return cell
}

}

struct Sounds{
var statement : String
var file : URL
}

最佳答案

看起来您的文件没有附加到项目中。检查附加文件的捆绑资源和目标。在这种情况下,最好使用“lazy var”而不是“let”

关于ios - 为 collectionview 声明的数组 null 值可选,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55452728/

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