目前,我有一個應用程序,用戶點擊地圖並添加帶有特定字幕的註釋點。但是,當手機重新啓動時,所有附加點都消失了。我有興趣使這些註釋持久。我一直在試圖弄清楚如何使用Core-Data來做到這一點,但在閱讀本教程後:http://www.raywenderlich.com/934/core-data-tutorial-getting-started,我從哪裏開始有點失落。通過核心數據恢復註釋
任何幫助,將不勝感激,謝謝。
目前,我有一個應用程序,用戶點擊地圖並添加帶有特定字幕的註釋點。但是,當手機重新啓動時,所有附加點都消失了。我有興趣使這些註釋持久。我一直在試圖弄清楚如何使用Core-Data來做到這一點,但在閱讀本教程後:http://www.raywenderlich.com/934/core-data-tutorial-getting-started,我從哪裏開始有點失落。通過核心數據恢復註釋
任何幫助,將不勝感激,謝謝。
如果您設置了核心數據應用程序,則只需要在xcdatamodel文件中創建一個實體。爲您想要存儲的任何內容添加屬性。
latitude - double
longitude - double
title - NSString
等,直到你有你想要的。
當你想添加一個註解時,你應該爲你的實體創建一個新的核心數據對象。它看起來像這樣
Location *newLocation = (Location *)[NSEntityDescription insertNewObjectForEntityForName:@"Location" inManagedObjectContext:self.managedObjectContext];
Location.latitude = ....
// and so on to store the information you want in its attributes;
如果您稍後更改值,您可以在不同點設置屬性。你只需要能夠訪問正確的對象去註釋。你應該可以在你的managedObjectContext中使用NSFetchRequest來做到這一點。您可以使用NSPredicate將對象過濾爲所需的對象。然後,當你準備好退出應用程序,使用
NSError *error = nil;
if ([managedObjectContext save:&error]) {
// handle the error;
}
將存儲已添加到被下一次打開應用程序中的所有對象的保存環境。然後,您將能夠根據managedObjectContext中的對象創建註釋。我希望這就是你想要的,或者至少讓你知道如何處理你想做的事情。