(cell.viewWithTag(24) as! UILabel).text = "\(tmpSeasonName)\(String((path)["seasoncategoryno"] as? Int ?? 0)): \(tmpEpisodeName)\(String((path) ["episodeno"] as? Int ?? 0))"
我想像这样并排显示季节编号和剧集编号(第1季:第5集),但显示的却像第1季:第0集。
["carouselidgroupnametvshownamepublished": SeriesEpisodeThe Qimmah Showtrue, "maturityrating": , "productsizes": , "episodeno": 1, "featuredpublish": truetrue, "releasedate": 2018-06-11, "publishparent": truefalse]
答案 0 :(得分:2)
这部分代码是问题所在:
(String((path) ["episodeno"] as? Int ?? 0)
您没有将"episodeno"
合并为Int
,默认({??
)为0
。
由于episodeno
的值是nil
或不能转换为Int
,因此默认为0
答案 1 :(得分:1)
使用编码的类型转换方法是将int转换为String
示例:
var imgArry = [String: AnyObject]()
let dict: [String: AnyObject] = ["ID":1 as AnyObject,"IMAGE":#imageLiteral(resourceName: "image_name")]
imgArry.append(dict)
比较以选择检测ID的行
dictDataInfo:[String: AnyObject]
if dictDataInfo["ID"] as! String == dict["ID"] as! String{
Print (i)
}