Swift:如何在NSURL中引用本地图片



我有一个代码,它从在线检索的文章中加载一些缩略图,并将它们放入Article对象中。它看起来如下:

            for article in newArticlesArray {
                let url: String
                if let myGroup = article["group"] as? Dictionary<NSObject, AnyObject>, let myThumbnail = myGroup["thumbnail"] as? Dictionary<NSObject, AnyObject>, let myURL = myThumbnail["url"] as? String{
                    url = myURL
                }
                else{
                    url = "file://no-thumbnail.png"
                }
            let a = Article(t: article["title"] as! String,
                                    da: article["pubDate"] as! String,
                                    de: newDesc,
                                    th: NSURL(string: url)!,
                                    l: NSURL(string: article["link"] as! String)!)
                    articlesArray.addObject(a)

然而,当一篇文章没有缩略图时,问题就出现了,因此我不得不使用本地图像。没有缩略图的本地文件名为no-thumbnail.png,但我似乎找不到一个简单的在线指南,说明如何通过在swift中使用NSURL来实际引用本地文件,在本例中是.png图像。

希望有人能分享一些对此的见解。

解决方案

对于感兴趣的人,解决方案如下:

let th = NSBundle.mainBundle().URLForResource("no-thumbnail", withExtension: "png")
url = th!.absoluteString

您可以使用Bundle.main.url(forResource: "no-thumbnail", withExtension: "png")

Swift 4的语法发生了一些变化:

let imageURL = Bundle.main.url(forResource: "imageName", withExtension: "png")

相关内容

  • 没有找到相关文章