這裡示範如何將 UIImage 存入相簿 Album 中,方法其實很簡單,如上圖所示我們將程式碼撰寫在程式進入點,當 View 被開啟時就把中間的影像存至相簿,右圖就是在圖庫中瀏覽所存入的影像,其程式碼如下。
UIImageWriteToSavedPhotosAlbum(imageView.image, nil, nil, nil);
一般來說後面的三個參數直接帶入 nil 即可,除非有特殊需求,例如在儲存影像之後需要改變 Focus,或是觸發函式等。
如果你希望在儲存影像之後可以跳出一個警告視窗 UIAlertView 確認是否有正確儲存影像,可以參考以下做法新增一個函式來幫助判斷儲存影像時是否產生錯誤,並且彈出警告視窗加以提示。
如果你希望在儲存影像之後可以跳出一個警告視窗 UIAlertView 確認是否有正確儲存影像,可以參考以下做法新增一個函式來幫助判斷儲存影像時是否產生錯誤,並且彈出警告視窗加以提示。
//自行建立判斷儲存成功與否的函式
- (void)image:(UIImage *)image didFinishSavingWithError:(NSError *)error contextInfo:(void *)contextInfo {
UIAlertView *alert;
//以error參數判斷是否成功儲存影像
if (error) {
alert = [[UIAlertView alloc] initWithTitle:@"錯誤"
message:[error description]
delegate:self
cancelButtonTitle:@"確定"
otherButtonTitles:nil];
} else {
alert = [[UIAlertView alloc] initWithTitle:@"成功"
message:@"影像已存入相簿中"
delegate:self
cancelButtonTitle:@"確定"
otherButtonTitles:nil];
}
//顯示警告訊息
[alert show];
}
之後我們在儲存影像時只要呼叫此參數即可。
UIImageWriteToSavedPhotosAlbum(imageView.image, self, @selector(image:didFinishSavingWithError:contextInfo:), nil);
感謝,受教了:)
回覆刪除您好 cg2010studio
刪除您太客氣了!
您好
回覆刪除我想請問一下
有沒有方法可以去判斷現在這張圖是否已經存入相簿嗎?
就是讓這張圖不要重複
您好:
刪除如果沒辦法在你自己程式裡判斷的話,你就只能將所有檔案挖出來用檔案名稱判斷是否重複(雖然這也不是很保險就是了)。
詳細的方法我並沒有實作過,不過你可以試試看 ALAssetsLibrary 來取得檔案並判斷名稱。
刚好看到这里。感慨的是博主几乎只要有问题都有很认真的回答。
刪除yinhan 您好:
刪除只是互相討論、切磋而已,也歡迎您給我們一些指教!