【发布时间】:2017-08-10 12:23:39
【问题描述】:
我有一组 png 图片。
iconeImage = [UIImage(named:"ion-home")!,UIImage(named:"ms-medkit")!,UIImage(named:"ion-edit")!,UIImage(named:"ion-clipboard")!,UIImage(named:"ion-clipboard")!,UIImage(named:"ion-waterdrop")!,UIImage(named:"ion-calendar")!]
我有一个用于表格视图的函数,它用这个数组元素设置图像
这里是代码
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "MenuTableViewCell") as! MenuTableViewCell
cell.imgIcon.image = iconeImage[indexPath.row]
return cell
}
但它给了我 iconeImage 具有 nil 值的错误。所以你能建议我解决方案吗?我是 swift 3 的初学者
这是截图 ![两个布偶][1]
【问题讨论】:
-
您的项目中真的有一张名为
ion-home的图片吗?每个都一样? -
看起来您实际上没有与所有这些图像名称匹配的图像,或者您可能没有将它们存储在正确的位置。除非它们是
Assets.xcassets的一部分,否则您还需要在图像名称中指定扩展名。 -
如果它说
iconeImage是nil,或者它有0图像,这意味着上面的代码从未执行过,或者内容被替换了其他部分.另一方面,如果其中一个图像 init 应该返回 nil,则应用程序会崩溃,说您有一个意外的 nil(因为强制展开“!”)。 -
是的,我的 Assets.xcassets 文件夹中有这些图像
-
只是为了建议:为什么不使用图像数组而不是使用图像名称数组?