2012-06-11 65 views
2

我正在尝试创建一个应用程序,以保存媒体选择器中用户的媒体选择以便重新使用并避免重新选择项目。有没有办法做到这一点与媒体选择器或任何示例代码?iOS保存媒体选择器选择

回答

2

要做到这一点的唯一方法是将媒体选择保存在应用程序的沙箱即Documents目录中以供重用。因为在没有用户干预的情况下无法访问媒体,即每当您想从媒体库中选择某些内容时,您都必须提供媒体选择器。您可以使用像这样保存的图像应用程序文档目录:

+(BOOL)saveImageInDocumentsDirectory:(UIImage*)image WithName:(NSString*)name { 
     NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,  NSUserDomainMask, YES); 
     NSString *documentsDirectory = [paths objectAtIndex:0]; 
     NSString *savedImagePath = [documentsDirectory stringByAppendingPathComponent:name]; 
     NSData *imageData = UIImagePNGRepresentation(image); 
     return [imageData writeToFile:savedImagePath atomically:NO]; 
} 

并获取图像:

+(UIImage*)getImageFromDocumentsDirectoryWithName:(NSString*)name { 
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,  NSUserDomainMask, YES); 
    NSString *documentsDirectory = [paths objectAtIndex:0]; 
    NSString *savedImagePath = [documentsDirectory stringByAppendingPathComponent:name]; 
    return [[[UIImage alloc] initWithContentsOfFile:savedImagePath] autorelease]; 
} 

希望能对大家有所帮助。