2012-06-11 62 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]; 
} 

希望能對大家有所幫助。