2010-01-23 89 views
0

所以我正在研究一個應用程序,它使用核心數據來存儲用戶可以設置的對象的屬性。我主要關注第一部分,它將核心數據方面的所有內容都設置好了,現在我已準備好進入涉及相機的下一部分。我希望能夠添加城市或其他地理位置(這是對象),然後能夠在內拍照,我的應用程序會相應地將這些圖片(或屬性)存儲在該對象下。例如,當我在我的uitableview上點擊紐約時,我可以查看我在紐約拍攝的任何照片。當我點擊佛羅里達時,我可以查看我在佛羅里達拍攝的任何照片。所以,我的問題是關於這是否有可能?對不起,這是一個模糊的問題。如果我要從我的應用程序中拍照,我是否也可以將它們保存在那裏?並在我的應用程序中列出它們的列表?我想我正在設想一個獨立的核心數據 - 樣式的可視化視圖,使用可讓您管理圖片的位置對象,以便可以像幻燈片放映模式那樣直接查看,以便能夠看到我在該位置拍攝的所有圖片。這是一種可能性,還是他們將保存在圖片應用程序的默認圖片位置?會不會有任何內存限制?或者我能夠從媒體內存中拉出(8GB,16GB等)?我想我的問題不是針對具體的代碼示例,而是針對定向目的。如果任何人有任何見解/想法來幫助我,將不勝感激。謝謝!關於核心數據和相機的問題

回答

3

您描述的設計絕對有可能。

可以給用戶帶來的機會,在你的應用程序從他們的照片庫中選擇一張圖片(和/或視頻)和/或採取一個新的用相機,然後使用/編輯/存儲。查看UIImagePickerControllerUIImagePickerControllerDelegate協議。

通過使用UIImagePNGRepresentation()UIImageJPEGRepresentation()將圖像轉換爲NSData,可以將圖像直接作爲可轉換屬性存儲在覈心數據中。如果您這樣做,建議您創建一個具有圖像數據屬性的單獨實體,以便您可以快速加載其他屬性(並且只根據需要在關係中引入圖像數據)。或者,您可以將圖像存儲在應用程序的Documents目錄中的文件中,並將文件名保存爲實體中的屬性。

查看Three20 library中的TTThumbsViewController,這是顯示照片縮略圖網格的好方法。

+0

嘿謝謝,多數民衆贊成我正在尋找! – Steve 2010-01-23 01:43:47

1

我真的建議將文件存儲到應用程序的文件目錄,並在數據庫中存儲的路徑給他們。你可以用另一種方式做到這一點,但是將它們存儲在文件中可以使數據庫更小,並使您可以更靈活地將它們上載到某處,而無需將整個圖像加載到內存中。