gpt4 book ai didi

ios - 从类中的 URL 加载图像

转载 作者:行者123 更新时间:2023-11-28 07:16:03 25 4
gpt4 key购买 nike

我试图在 Swift 上从 URL 加载图像,并实例化它。我可以编译我的代码,但是当我编译代码时它会中断。

这是我的类(class)代码:

class Beer {
let name : String
let beernameInDB : String
let imgUrl : NSURL
var err : NSError?
let imageData : NSData
let img : UIImage
init(name : String, imgUrl: String, beernameInDB : String){
self.name = name
self.imgUrl = NSURL.URLWithString(imgUrl);
self.beernameInDB = beernameInDB
self.imageData = NSData.dataWithContentsOfURL(self.imgUrl,options: NSDataReadingOptions.DataReadingMappedIfSafe, error: &err)

self.img = UIImage(data: imageData)
}
}

这是我实例化的地方,它中断了:

class FirstViewController: UIViewController {
var array = [
Beer(name: "Budweiser", imgUrl: "https://s3.amazonaws.com/brewerydbapi/beer/1P45iR/upl[ad_upBR4q-large.png", beernameInDB:"Anheuser-Busch InBev-Budweiser")
]

当我运行它时,它在类的这一行中断:

self.imageData = NSData.dataWithContentsOfURL(self.imgUrl,options: NSDataReadingOptions.DataReadingMappedIfSafe, error: &err)

出现消息“ fatal error :在展开可选值时意外发现 nil”

基本上,我认为它可能试图在定义 imgUrl 之前为 imageData 赋值,所以我尝试将该行更改为具有“NSURL.URLWithString(imgUrl)”而不是“self.imgUrl”,但它没有修复,所以我现在真的不知道是什么问题

最佳答案

这是一种不同的技术,但这里有一些加载网络照片的简单代码:

import UIKit
import WebKit

class ViewController: UIViewController {

@IBOutlet var containerView : UIView?
var webView: WKWebView?

override func loadView() {
super.loadView()

self.webView = WKWebView()
self.view = self.webView!
}

override func viewDidLoad() {
super.viewDidLoad()

var url = NSURL(string:"http://chart.finance.yahoo.com/z?s=AAPL&t=6m&q=l&l=on&z=s&p=m50,m200")
var req = NSURLRequest(URL:url)
self.webView!.loadRequest(req)
}
}

关于ios - 从类中的 URL 加载图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26187959/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com