iOS 獲取本地圖片URL

文件目錄內圖片URL

let path = Bundle.main.path(forResource: 圖片名字, ofType: 文件類型)
let url =  URL(fileURLWithPath: path)

assets中的圖片

沒有找到直接獲取url的方法, 但是可以通過先寫如到本地,創建一個本地URL的方式。

extension URL {
    /// 獲取本地圖片(asset)中的URL
    static func fromLocalImage(named name: String) -> URL? {
        
        let fileManager = FileManager.default
        let cacheDirectory = fileManager.urls(for: .cachesDirectory, in: .userDomainMask)[0]
        let url = cacheDirectory.appendingPathComponent("\(name).png")
        let path = url.path
        
        guard fileManager.fileExists(atPath: path) else {
            guard
                let image = UIImage(named: name),
                let data = image.pngData()
                else { return nil }
            /// 通過寫入圖片數據實現 路徑url
            fileManager.createFile(atPath: path, contents: data, attributes: nil)
            return url
        }
        return url
    }
}

按道理,只要圖片資源存在,就可以通過圖片數據創造除URL

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章