这是上一篇文章here的后续内容。
我现在正在尝试访问该数组并使用它来填充我的collectionView。当我尝试下面的代码时,我的imageData返回为nil,即使imageURL正确显示为文件路径,我也会崩溃。
func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
let usD = UserDefaults.standard
let array = usD.stringArray(forKey: "WeatherArray") ?? []
let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "cell", for: indexPath) as! myCell
let myString = array[indexPath.row]
let imageUrl = URL(string: myString)!
let imageData = try? Data(contentsOf: imageUrl)
let image = UIImage(data: imageData!)
cell.myImageView.image = image
以下是我的URL(字符串:myString)的示例:
文件:///private/var/mobile/Containers/Data/Application/6DD4ED20-F1BB-46DB-8A8C-35C3CFB2B2C6/tmp/01431A0E-F7C2-4A60-B1C6-5C9508C75863.jpeg
另外,检查imageUrl会显示以下错误:
打印imageUrl的说明: 表达式产生的错误:错误:/var/folders/np/4m9vk2yd0bzbf74lxrnffccr0000gn/T/expr9-6d45ad..swift:1:65:错误:使用未声明的类型'基础' Swift._DebuggerSupport.stringForPrintObject(Swift.UnsafePointer< Foundation.URL>(bitPattern:0x1054f86a0)!。pointee)