2014-01-29 26 views
0

我有一個應用程序,它在tableview中加載一個國家列表。第一次下載應用程序時,它應該顯示整個列表,當用戶選擇一個國家這應該被添加到一個數組。我沒有得到如何跟蹤第一次用戶選擇的國家數量,以及從用戶下次打開應用時我應該只顯示選定的國家。我可以以什麼方式執行此操作?當我在網上搜索瞭解靜態但無法實現它。如何在iOS中持久存儲信息?

我是iPhone新手。任何幫助,將不勝感激。

回答

1

你有不同的選擇,以永久地存儲信息:核心數據,SQLite的,等等。在這種情況下使用一個簡單的NSUserDefault。如果你保持在一個NSArray選定的國家的名單,你可以存儲和如下檢索此陣:

//To set your array 
[[NSUserDefaults standardUserDefaults]setObject:(NSArray *)yourArray forKey:@"userSelection"]; 
[[NSUserDefaults standardUserDefaults]synchronize]; 

//To retrieve your array 
NSArray *myArray = [[NSUserDefaults standardUserDefaults]objectForKey:@"userSelection"]; 

要使用此選項您的NSArray但必須是一個屬性列表 - 這裏的蘋果文檔,瞭解什麼是property list is 。如果你想存儲其他類型的對象,你應該看看不同的解決方案(.e.g核心數據)。

+0

感謝您的回覆 – user3162102

0

你需要持久地存儲選擇。與靜態變量無關,在退出應用程序時會失去它。以NSUserPreferences作爲存儲用戶偏好的一種方式。

+0

感謝您的回覆 – user3162102

0

你在找什麼是persistent storage

iOSpersistent storage的各種方式爲: -

  1. Property Lists
  2. SQLite
  3. Core Data
  4. User Defaults (NSUserDefaults)

根據您要存儲的數據的大小&,可以使用以下選項之一。

如果你的要求說你只需要堅持NSArray,那麼最好去Property ListsNSUser Defaults

對於閱讀&寫Property List你可以找到的文檔in Apple Docs

NSUser Defaults使用,你可以找到一個很好的教程here

+0

感謝您的解僱 – user3162102