2011-01-14 38 views
0

我愛上了最近幾個月的核心數據,並用它將數據保存在我的應用中,包括用戶設置。它工作的很好,但我擔心未來的更新會有問題。iPhone應用程序用戶設置 - 建議的方法是什麼?

我知道3種方式來存儲偏好我的應用程序 - 1.核心數據。 2. NSUserDefaults。 3.使用內置設置組件。

喜歡瞭解這種方法的優缺點。

感謝 SHANI

+0

嗯有點偏題,但我可以知道你從哪裏學習核心數據嗎?我總是避免核心數據,因爲我一直認爲plist和偏好足夠了......(我知道優點或核心數據是因爲它可以執行sql查詢) – 2011-01-14 10:34:25

+0

嗨。我有一個應用程序內置與plists,我不得不說,移動到核心數據使我的生活更容易,併爲我的應用程序打開更多的選項。我親自通過閱讀蘋果示例項目以及通過試驗和構建具有核心數據的簡單應用程序來學習。這需要時間,我仍然有很多東西需要學習,但我真的相信最好的方法就是嘗試嘗試嘗試,直到有一天你簡單地得到它。祝你好運。 – shannoga 2011-01-14 12:47:21

回答

4

編輯注:我一個鏈接,Implementing Application Preferences,壞了。本答覆的其餘部分仍然適用。但是,您現在也可以以類似於(但獨立於)NSUserDefaults的方式使用store data in iCloud

你可以參考蘋果自己的指南:About Preferences and Settings

第一次,但是你想你可以保存設置:這只是用戶數據。 NSUserDefaults和Core Data之間的選擇就在API之間,前者是專門爲處理用戶首選項而設計的。但你可能(技術上)使用INI文件,如果你絕對想(但不!)。所以有三種以上的方法可以做到這一點。

其次,NSUserDefaults和「內置設置組件」實際上是一樣的。使用設置應用程序仍然會將首選項保存在您使用該API訪問應用程序的NSUserDefaults中。

您可能想要使用內置設置應用的而不是的原因是:用戶更改這些設置很麻煩。如果用戶可能需要頻繁更改設置,則可能需要在應用內部執行此操作(例如,開啓/關閉音樂,更改播放器名稱)。此外,由於您可以完全控制自己的應用程序,因此您可以擁有比Apple在Settings.app中提供的GUI更靈活的GUI。但是,這確實是GUI的問題,而不是設置的存儲方式。

至於使用核心數據或NSUserDefaults ......就如我所說的,一個是專門爲用戶偏好設計的,另一個是基於行的用戶數據。 NSUserDefaults允許您使用默認設置,將新設置添加到並支持內置設置系統很簡單。這也很簡單:它只是加載一個屬性列表。另一方面,核心數據需要整個持久性存儲和管理對象上下文堆棧。總結:使用NSUserDefaults進行設置,並根據設置必須更改的頻率以及您的特定需求,在內置設置應用程序和擁有自己的控制面板之間進行選擇。

相關問題