Documentsに保存された画像をUIImageとして取り出すクラス・メソッドのサンプルです。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
import UIKit class ConvertModel: NSObject { // DocumentsDirectoryからUIImageを取得 public static func getUIImageFromDocumentsDirectory(name: String) -> UIImage { let dirPath = getdocumentsDirectory().appendingPathComponent(name) let image = UIImage(contentsOfFile: dirPath.path) if (image == nil) { return エラー用の画像を返す } return image! } // ファイルを保存するディレクトリのURLを取得 private static func getdocumentsDirectory() -> URL { let paths = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask) let documentsDirectory = paths[0] return documentsDirectory } } |
サンプルコードの使い方・解説
staticなメソッドなので、
ConvertModel.getUIImageFromDocumentsDirectory(“hogehoge”)という感じで使用することができます。
getdocumentsDirectory()でDocumentsディレクトリのパスを取得しているのですが、
これはクラス外からは使用することがないのでprivateなメソッドとしています。
また、引数で指定した名前の画像がなかった場合に返す画像としてエラー用の画像を設定しておきましょう。
それが面倒な型は、返り値の型をオプショナル型にしてnilを返すようにすれば良いでしょう。