2013-04-25 16 views
2

我正在使用照片查看器,但我不想實現垃圾按鈕。刪除ALAsset

我已經有按鈕準備就緒,一切都很好走,但以下幾點:

如何實際刪除ALAsset?

我在許多地方尋找,但未能找到答案......

感謝,

出於某種原因,我不能張貼這個問題所以我加入一個不相干的代碼我的垃圾按鈕:

UIBarButtonItem *trash = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemTrash target:self action:@selector(trashButtonHit:)]; 
+0

你可以請你發佈你的代碼,以創建照片瀏覽器嗎? – 2013-04-25 08:44:01

回答

2

您無法刪除ALAsset,因此沒有API。

ALAsset指向Photo庫中的一個文件,該文件位於應用程序的沙箱外。資產庫允許您訪問照片庫中的文件,但它們是隻讀的。

2

ALAssets不是隻讀:

editable 
    Indicates whether the asset is editable. (read-only) 

    @property(nonatomic, readonly, getter=isEditable) BOOL editable 

和文檔繼續描述如何編輯ALAsset(您的應用程序必須創建它)。但文檔不提供'刪除'。這很愚蠢,因爲你的應用程序可以將照片編輯爲1x1像素圖像或「骷髏和交叉骨」等。

我想會發生什麼事情是蘋果保存原件,所以你不能刪除圖像,只編輯它。

我可以看到蘋果正在駕駛什麼 - 他們不希望應用程序刪除照片並「驚訝」用戶。但是一些應用程序可能希望擁有自己的編輯工具,包括垃圾桶。

答案就是在您自己的應用程序中重新創建整個相機膠捲界面,並將圖像存儲在您自己的存儲中。

+0

這句話使用'自己的存儲'是一些令人傷心的事情。但是,在更明亮的一面,我想我們可以通過改變它的元數據來刪除這個小魔鬼。 – 2014-04-18 12:24:17