我是iOS開發新手,無法弄清楚如何從本地目錄加載imageView中的圖像。 我使用imagePickerController來選取圖像,獲取其信息,然後使用這些信息在imageView中顯示圖像。Swift 3從本地directory下載圖片
下面是代碼挑圖像和信息詞典:
func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) {
let image = info[UIImagePickerControllerOriginalImage] as! UIImage
let imageUrl = info[UIImagePickerControllerReferenceURL] as! NSURL
let imageName = imageUrl.lastPathComponent
let documentDirectory = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true).first!
let photoURL = NSURL(fileURLWithPath: documentDirectory)
let localPath = photoURL.appendingPathComponent(imageName!)!
imagesList.append(localPath)
picker.dismiss(animated: true, completion: nil)
}
那時,這裏就是我在尋找一些幫助,我希望爲使用了localPath或IMAGEURL加載圖像在另一個圖像查看,但無法弄清楚如何。 我試過
func changeImage(_ sender: Any) {
if imagesList.count > 0 {
let imageUrlPath = imagesList[indexList]
let urlString: String = imageUrlPath.absoluteString
imageView.image = UIImage(contentsOfFile: urlString)
indexList = (indexList + 1) % imagesList.count
}
}
但我不能有什麼工作。 任何想法如何我可以實現這一點?
謝謝你的幫助。
您需要使用'imageUrlPath.path'而不是'imageUrlPath.absoluteString' –
感謝您的幫助。我沒有任何錯誤,但圖像不顯示在imageView中。如果我打印urlString,它只包含「/asset.JPG」,我認爲這不夠。 什麼contentsOfFile應該包含:整個路徑(file:/// Users/me/Library/Developer/CoreSimulator/Devices/BF7D44E4-26DD-43EE-5543-D7AB7654F8DC/data/Containers/Data/Application/C9561694- 34E9-46AD-83AA-38F067557F86 /文檔/ asset.JPG)?或者像「assets-library://asset/asset.JPG?id = 9A443DCB-EC44-42B8-8773-B597CF782EDD&ext = JPG」 – radar
打印路徑並檢查圖像是否存在 –