IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    [原]Swift Core Data 图片存储与读取Demo

    zhangao0086发表于 2015-03-20 23:08:37
    love 0

    实体的模型定义:
    这里写图片描述

    这里写图片描述

    实体的class定义:

    @objc(ImageEntity)
    class ImageEntity: NSManagedObject {
        @NSManaged var imageData: NSData
    }

    存储:

    @IBAction func saveImageToCoreData() {
        let delegate = UIApplication.sharedApplication().delegate as AppDelegate
        let context = delegate.managedObjectContext
    
        let imageData = UIImagePNGRepresentation(UIImage(named: "image"))
    
        let imageEntity = NSEntityDescription.entityForName("ImageEntity", inManagedObjectContext: context!)
        let image = ImageEntity(entity: imageEntity!, insertIntoManagedObjectContext: context!)
        image.imageData = imageData
    
        var error: NSError?
        if context!.save(&error;) == false {
            println("failed: \(error!.localizedDescription)")
        }
    }

    读取:

    @IBAction func loadImageFromCoreData() {
        let delegate = UIApplication.sharedApplication().delegate as AppDelegate
        let context = delegate.managedObjectContext
    
        let request = NSFetchRequest(entityName: "ImageEntity")
        var error: NSError?
        let imageEntities = context?.executeFetchRequest(request, error: &error;)
    
        let imageEntity = imageEntities?.first! as ImageEntity
        self.imageView.image = UIImage(data: imageEntity.imageData)
    }

    Demo地址



沪ICP备19023445号-2号
友情链接