【发布时间】:2015-10-02 12:57:01
【问题描述】:
我有 load_image 功能并且可以使用
load_image("http://blabla.com/bla.png")
但是当我像这样添加变量时
load_image(detailDesc2!)
给出这个错误
fatal error: unexpectedly found nil while unwrapping an Optional value
我的代码在这里
ViewController 表查看选定的代码。这里将 detailDesc1 和 detailDesc 2 发送到 DetailView 控制器
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
let subcatVC = self.storyboard?.instantiateViewControllerWithIdentifier("Detail") as! DetailViewController
subcatVC.detailDesc1 = self.arrayCategory[indexPath.row][API_PARAM_CAT_ID] as! String
subcatVC.detailDesc2 = self.arrayCategory[indexPath.row][API_PARAM_CAT_IMAGE] as! String
_ = UINavigationController(rootViewController: subcatVC)
self.navigationController?.pushViewController(subcatVC, animated: false)
}
DetailViewController
var detailDesc1:String?
var detailDesc2:String?
load_image(detailDesc2!) // HERE GIVES ERROR
我的 load_image 函数
func load_image(urlString:String)
{
let imgURL: NSURL = NSURL(string: urlString)!
let request: NSURLRequest = NSURLRequest(URL: imgURL)
let session = NSURLSession.sharedSession()
let task = session.dataTaskWithRequest(request){
(data, response, error) -> Void in
if (error == nil && data != nil)
{
func display_image()
{
self.imagetbig.image = UIImage(data: data!)
}
dispatch_async(dispatch_get_main_queue(), display_image)
}
}
task.resume()
}
此外,当我添加此代码时,成功工作标签和 textviews 显示。
textbig.text = detailDesc1
textim.text = detailDesc2
【问题讨论】:
-
您的 urlString 为零。在传递之前检查 detailDesc2-value。
-
什么时候调用“load_image(detailDesc2!)”?
-
已解决,谢谢!所有维克多都给出了代码;)
标签: ios swift swift2 nsurl loadimage