【发布时间】:2016-09-27 09:16:20
【问题描述】:
我有一个 plist 在我的项目中运行,其中包含多个图像 url。我正在尝试将 url 图像传递给我的 imageView,它位于同一个 viewController 中。我从 github 中发现了类似的问题,例如 Loading/Downloading image from URL on Swift 、 Swift - Read plist ,@ 987654323@我经历了所有这些答案,但到目前为止没有运气而不是致命的崩溃。我的部分代码如下......
方法一:
override func viewDidLoad() {
super.viewDidLoad()
if let path = Bundle.main.path(forResource: "apps", ofType: "plist"),
let root = (NSArray(contentsOfFile: path))
{
let url = NSURL(string: path)
let data = NSData(contentsOf: url! as URL)
if let imageData = data {
imageView.image = UIImage(data: imageData as Data)
}
**// Swift Console Printinging as Follows**
print(root)
// printing all my plist url links like {icon = "https://xxxxxxxxxxx.com/image/girl_face_freckles_eyes_92358_1920x1080.jpg";}
print(url)
// (/Users/xxxxxx/Library/Developer/CoreSimulator/Devices/52DA3F73-83E0-4C29-9DE1-D8D5F0731C13/data/Containers/Bundle/Applica ... ps.plist)
print(data)
// nil
print(imageView.image)
//nil
} else {
print("Either the file does not exist or the root object is an array")
}
方法二:
let path = Bundle.main.path(forResource: "apps", ofType: "plist")
let url = NSURL(string: path!)
let imgData = try? Data(contentsOf: url as! URL)
let img = UIImage(data: imgData!)!
print(img) // fatal crash
}
【问题讨论】: