uitableview directory swift2 document xcode7.1

DocumentsDirectory en UITableView Array para Xcode 7 y Swift 2.0



swift2 xcode7.1 (1)

Tengo un proyecto en el que estoy trabajando que crea y guarda archivos PDF localmente en DocumentDirectoy . He leído aquí sobre cómo ver DocumentDirectory y filtrarlo para archivos PDF . Quiero que los archivos de DocumentDirectory puedan visualizarse en una UITableView . Sé que tengo que tener una array para eso. Vi aquí al hacer esto, pero no puedo entender cómo hacer que DocumentDirectory convierta en una matriz en Swift 2.0 para que se muestre en mi UITableView . Mis archivos PDF se guardan y se pueden ver en mi UIWebView .

Mi código para ver mis PDF de DocumentDirectory es:

func itemsInDirectory() { // We need just to get the documents folder url let documentsUrl = NSFileManager.defaultManager().URLsForDirectory(.DocumentDirectory, inDomains: .UserDomainMask).first! // now lets get the directory contents (including folders) do { let directoryContents = try NSFileManager.defaultManager().contentsOfDirectoryAtURL(documentsUrl, includingPropertiesForKeys: nil, options: NSDirectoryEnumerationOptions()) print("Items: /(directoryContents)") } catch let error as NSError { print(error.localizedDescription) } // if you want to filter the directory contents you can do like this: do { let directoryUrls = try NSFileManager.defaultManager().contentsOfDirectoryAtURL(documentsUrl, includingPropertiesForKeys: nil, options: NSDirectoryEnumerationOptions()) print(directoryUrls) let PDFFiles = directoryUrls.filter(){ $0.pathExtension == "pdf" }.map{ $0.lastPathComponent } print("PDF FILES:/n" + PDFFiles.description) } catch let error as NSError { print(error.localizedDescription) } }

Los imprime cuando lo ejecuto. ¿Alguien puede ayudarme a convertir DocumentDirectory a una matriz para ver en mi UITableView ? Gracias.


Me lo imaginé. En mi menú principal View Controller en la sección ViewDidLoad() agregué:

// Get the documents folder url let documentsUrl = NSFileManager.defaultManager().URLsForDirectory(.DocumentDirectory, inDomains: .UserDomainMask).first! // Filter for PDF only do { let directoryUrls = try NSFileManager.defaultManager().contentsOfDirectoryAtURL(documentsUrl, includingPropertiesForKeys: nil, options: NSDirectoryEnumerationOptions()) let PDFFiles = directoryUrls.filter(){ $0.pathExtension == "pdf" }.map{ $0.lastPathComponent } // Set TableView array for saved files to DocumentDirectory PDFs savedPDFFiles = PDFFiles print(savedPDFFiles) } catch let error as NSError { print(error.localizedDescription) }

En mi otro Table View Controller , configuré savedPDFFiles como una Global Variable . Al cargar mi Table View Controller , la tabla muestra mis archivos DocumentDirectory por nombre.