2017-05-25 58 views
-2

我的问题不重复,因为我之前阅读过它们。致命错误:意外地发现零,同时展开一个可选值 - swift 3

我的代码:

var str_images = "http://kashanmap.ir/images/apk_images/off/33/Cta_off _1_.jpg ,http://kashanmap.ir/images/apk_images/off/33/Cta_off _2_.jpg ,http://kashanmap.ir/images/apk_images/off/33/Cta_off-_4_.jpg" 

    for one_img in multi_img{ 
     print("one: \(one_img)") 
     var img = one_img 

     //self.imgs_slider.append(img) 
     let alamofireSource = AlamofireSource(urlString: img)! 
     images.append(alamofireSource) 
    } 

我的控制台日志:

one: http://kashanmap.ir/images/apk_images/off/33/Cta_off _1_.jpg 
fatal error: unexpectedly found nil while unwrapping an Optional value 
(lldb) 

enter image description here

我改变了这一行:

 var img = one_img 

到:

 var img = one_img? 

 var img = one_img! 

但Xcode中示出了红色循环以除去?!

+0

'multi_img'从哪里来?发生此错误的原因是字符串中存在未中断的空格字符,这会破坏URL创建。这不是javascript,变量名应该看起来像'oneImg'而不是'one_img' – vadian

回答

2

你应该改变什么是这一行:

let alamofireSource = AlamofireSource(urlString: img)! 

!末?如果AlamofireSource(urlString: img)为零,则会崩溃。

要解决这个问题,只需使用可选的结合:

if let alamofireSource = AlamofireSource(urlString: img) { 
    images.append(alamofireSource) 
} 

您的网址似乎是无效的了。他们不能在他们的空间,所以要解决问题的根源,你应该改变网址。

相关问题