URL 错误:在展开可选值时意外发现 nil:文件
Posted
技术标签:
【中文标题】URL 错误:在展开可选值时意外发现 nil:文件【英文标题】:URL Error : Unexpectedly found nil while unwrapping an Optional value: file 【发布时间】:2019-12-03 08:03:20 【问题描述】:我正在使用 WinguGallery 吊舱。我想查看我使用wingugallerry 从MSSQL 获取的链接中的照片。我可以成功提取数据。但是“让asset = ImageAsset (url: url!) 我在“我已成功从数据库中检索数据。但可能在定义 url 部分中的变量时。我获取的数据是字符串变量。
import UIKit
import WinguGallery
class GelisimController: UIViewController
func fillWithGifs()
let client = SQLClient.sharedInstance()!
client.connect("ddd", username: "ddd", password: "ddd", database: "ddd") success in
client.execute("SELECT ddd FROM ddd", completion: (_ results: ([Any]?)) in
var gifsa: [String] = []
for table in results as! [[[String:AnyObject]]]
for row in table
for (_, value) in row
if let intVal = value as? String
gifsa.append(String(intVal))
var returnArray: [ImageAsset?] = [ImageAsset]()
for item in gifsa
let url = URL(string: item)
let asset = ImageAsset(url: url!) //error line
returnArray.append(asset)
self.winguGalleryView.assets = returnArray
print("returnArray", gifsa)
client.disconnect()
)
【问题讨论】:
看起来item
是无效的URL,所以URL(string: item)
没有创建。检查item
中的内容。
当我打印该项目时,它表明数据已正确分配。 @Asperi
【参考方案1】:
像这样修改你的 for 循环
for item in gifsa
guard let url = URL(string : item) else continue
//Rest of the code here
如果您不确定这些值,请尽量不要强制展开。 :)
【讨论】:
以上是关于URL 错误:在展开可选值时意外发现 nil:文件的主要内容,如果未能解决你的问题,请参考以下文章
致命错误:在展开可选值时意外发现 nil - 带有 NSURLRequest 的 Swift