Ios 在tableViewCell中显示图像数组中的图像
每次运行下面的代码以显示单元格表视图上数组中的图像时,我都会收到一条错误消息 错误消息: 无法将类型为'NSTaggedPointerString'(0x10b7ae860)的值强制转换为'NSArray'(0x10b7ae900) 此处产品的输出为:产品NSTaggedPointerString*“AW”0xa000000000053552Ios 在tableViewCell中显示图像数组中的图像,ios,uitableview,Ios,Uitableview,每次运行下面的代码以显示单元格表视图上数组中的图像时,我都会收到一条错误消息 错误消息: 无法将类型为'NSTaggedPointerString'(0x10b7ae860)的值强制转换为'NSArray'(0x10b7ae900) 此处产品的输出为:产品NSTaggedPointerString*“AW”0xa000000000053552 var product=NSArray!() var-imageProduct=[“AW”:UIImage(名为:“MAC.png”),“AC”:UI
var product=NSArray!()
var-imageProduct=[“AW”:UIImage(名为:“MAC.png”),“AC”:UIImage(名为:“Windows.png”)]
让initialThumbnail=UIImage(名为:“ABC.png”)
让产品=产品[indexPath.row]
对于关键产品,请参见![任何对象]{
如果让image=self.imageProduct[键为!字符串]{
如果image==nil{
myCell.imageView?.image=初始缩略图
}
否则{
myCell.imageView?.image=image
}
}
}似乎产品
只是一个字符串,而不是数组。这意味着您不需要for
循环。此外,您正在有条件地从imageProduct
字典中展开图像,但在下一行中,您检查它是否为nil,这不可能,因为您只是有条件地展开了图像
你想要-
let initialThumbnail = UIImage(named: "ABC.png")
let products = product[indexPath.row]
if let image = self.imageProduct[products as! String] {
if image == nil {
myCell.imageView?.image = image
}
else {
myCell.imageView?.image = initialThumbnail
}
}
您确定product[indexPath.row]
是数组吗?是-->var product=NSArray!()我不是说产品。我在问product[indexPath.row]
是否是数组?我在它上面放了一个断点,一个it show me products-->NSString-->值为=“AW”的任何对象不是拼写错误吗?我的意思是数组应该称为产品,但你称它为产品。因此,作为关键产品![AnyObject]
可能应该阅读作为产品的密钥![AnyObject]
因为prduct
是数组的名称。还有,当出现错误时,哪一行高亮显示?