zoukankan      html  css  js  c++  java
  • Save Image to UserDefaults(用NSUserDefaults保存图片)

    //save to Userdefaults
        
        NSData *imageData;
        // create NSData-object from image
        imageData = [NSKeyedArchiver archivedDataWithRootObject:yourUIImage];
        // save NSData-object to UserDefaults
        [[NSUserDefaults standardUserDefaults] setObject:imageData forKey:@"image"];
        
        //load imag from Userdefaults
        NSData *imageData;
        imageData = [[NSUserDefaults standardUserDefaults] objectForKey:@"image"];
        
        if(imageData != nil)
        {
            yourUIImage = [NSKeyedUnarchiver unarchiveObjectWithData: imageData];
        }
        
        
        save
        
        //Save to PNG
        NSData *dataObj = UIImagePNGRepresentation(self);
        [dataObj writeToFile:path atomically:NO];
        
        //Save to JPG
        NSData *dataObj = UIImageJPEGRepresentation(self, 90);
        [dataObj writeToFile:path atomically:NO];
        
        
        Demo class:
        
        - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil 
        {
            if (self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil])
            {
                NSData *imageData;
                UIImage *theImage;
                imageData = [[NSUserDefaults standardUserDefaults] objectForKey:@"image"];
                if(imageData != nil)
                {
                        theImage = [NSKeyedUnarchiver unarchiveObjectWithData: imageData];    
                }    
            }
            return self;
        }
        
        - (IBAction)openPicker
        {
            if([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypePhotoLibrary])    
            {
                UIImagePickerController *picker;
                picker = [[UIImagePickerController alloc]init];
                picker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;        
                picker.allowsImageEditing = YES;            
                picker.delegate = self;
                [self presentModalViewController:picker animated:YES];
            }
        }

        - (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingImage:(UIImage *)image editingInfo:(NSDictionary *)editingInfo
        {

            [self useImage:image];    
            [[picker parentViewController] dismissModalViewControllerAnimated:YES];
        }
        
        -(void)useImage:(UIImage *)theImage
        {

            pickerImage.image = theImage;
            NSData *imageData;
            imageData = [NSKeyedArchiver archivedDataWithRootObject:theImage];
            [[NSUserDefaults standardUserDefaults] setObject:imageData forKey:@"image"];
        }

  • 相关阅读:
    mysql多表查询
    mysql单表查询
    第四篇: 记录相关操作
    第4章-1.生成3的乘方表 (15分)
    第3章-17.输出10个不重复的英文字母 (50分)
    第3章-22.判断两个字符串是否为变位词 (40分)
    第3章-21.输出大写英文字母 (15分)
    第3章-20.判断回文字符串 (15分)
    第3章-19.逆序的三位数 (10分)
    第3章-18.找最长的字符串 (15分)
  • 原文地址:https://www.cnblogs.com/supper-Ho/p/6556381.html
Copyright © 2011-2022 走看看