使用swift从目录加载多个图像
Posted
技术标签:
【中文标题】使用swift从目录加载多个图像【英文标题】:Load multiple image from directory using swift 【发布时间】:2016-07-14 06:26:02 【问题描述】:我是 ios 新手swift
编程真的需要帮助!
我从 url 下载图像并保存到路径 /Users/mymac/Library/Developer/CoreSimulator/Devices/583C02D5-9A88-4756-9044-CD6DB4DCB57C/data/Containers/Data/Application/699F623B-000B -4365-B451-CA3104AD958B/文档/图像
现在我可以通过手动指定名称来加载图像ImageView
var fileName = "Images/1A_Dorsal aspect.jpg"
var paths = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true)[0] as NSString
var getImagePath = paths.stringByAppendingPathComponent(fileName)
imageLoad.image = UIImage(contentsOfFile: getImagePath)
我需要的是使用数字加载 图像(即 25 个图像在我的文件夹图像中)使用 for 循环我想像 android(Java) 一样一张一张地加载图像
【问题讨论】:
这个问题和ios有关, 是的,在 iOS 中使用 swift 语言 【参考方案1】:从文件夹或目录中加载多个图像。 - 斯威夫特 4
这是附加的图像,我们希望在下面给出的代码中实现。
这是从文档目录中的文件夹中查找多个图像的代码。我已经写了一种方法来做同样的事情。
在代码中,我们传递“文件夹名称”(即红色)并获取 该目录的内容。作为回报,我们得到了图像名称数组。
static func loadImagesFromAlbum(folderName:String) -> [String]
let nsDocumentDirectory = FileManager.SearchPathDirectory.documentDirectory
let nsUserDomainMask = FileManager.SearchPathDomainMask.userDomainMask
let paths = NSSearchPathForDirectoriesInDomains(nsDocumentDirectory, nsUserDomainMask, true)
var theItems = [String]()
if let dirPath = paths.first
let imageURL = URL(fileURLWithPath: dirPath).appendingPathComponent(folderName)
do
theItems = try FileManager.default.contentsOfDirectory(atPath: imageURL.path)
return theItems
catch let error as NSError
print(error.localizedDescription)
return theItems
return theItems
这是给定代码的结果。
希望对你有帮助。
谢谢
【讨论】:
【参考方案2】:在这里您可以获取存储在“Images”文件夹中的所有图像名称试试下面的代码:
let fileManager = NSFileManager.defaultManager()
let arrImages : NSMutableArray = []
let tempFolderPath = AppHelper.fileInDocumentsDirectory("Images")
do
let filePaths = try fileManager.contentsOfDirectoryAtPath(tempFolderPath)
for filePath in filePaths
try arrImages.addObject(tempFolderPath + "/" + filePath)
catch
print("Could not get folder: \(error)")
print(arrImages)
【讨论】:
但是如何将图像加载到 imageView? 你在使用 tableView 吗? 不,我正在使用 Imageview 和 pageItemController 滚动。滚动页面时,我希望更改图像 看看这个例子:- github.com/UnicornTV/Swift-Example-UIPageViewController 正是您所指的,但我需要的是从目录文件夹(即设备内部)加载图像。例如 1.png、2.png、3.png...我怎么能做吗??以上是关于使用swift从目录加载多个图像的主要内容,如果未能解决你的问题,请参考以下文章
从 Document 目录加载多个图像时 UICollectionView 卡住