找不到接受类型为string的参数列表的UIImage类型的初始值设定项

时间:2015-07-29 08:15:05

标签: ios swift initializer-list

目前,此代码正常运行,但是paris是一个固定值,我想输入一个变量,并在之前定义它。

let entry1 = data.paris[indexPath.row]
let  image = UIImage(named: entry1.filename)
cell2.bkImageView2.image = image
cell2.headingLabel2.text = entry1.heading

但是当我这样做时,就会出现错误。找不到接受类型参数列表(命名为:string?!)

的UIImage类型的初始值设定项
let key1 = "paris"
let entry1 = data[key1][indexPath.row]
let  image = UIImage(named: entry1.filename)
cell2.bkImageView2.image = image
cell2.headingLabel2.text = entry1.heading

您有任何信息可以帮助我吗?

编辑:2012年7月29日13日

好的,按照你的解释,我有这个:

var entry = data[key][indexPath.row]
if let imgName = entry1.filename {
            let  image = UIImage(named: imgName!)
            cell2.bkImageView2.image = image
            cell2.headingLabel2.text = entry1.heading
        }

但是现在,我在最后一句话(cell2.headinglabel ......)上仍有错误:"标题"

的模糊使用

有什么想法吗?但对于以前的要求,完美!很好 ! :)

1 个答案:

答案 0 :(得分:0)

这意味着entry1.filename是可选字符串,而不是字符串,请尝试:

if let imgName = entry1.filename {
    let  image = UIImage(named: imgName)
}

请记住,图片也是可选的。