Наилучшим способом было бы сохранение источника данных tableView в файл .plist в каталоге документов. Затем в вашем методе viewWillAppear установите источник данных tableView в файл .plist (если он доступен).
Источником данных обычно является NSDictionary / Mutable или NSArray / Mutable. У них обоих есть метод записи в каталог документов, который можно получить так:
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
Метод записи одного из перечисленных в каталог документов будет выглядеть так:
BOOL saved = [datasource writeToPath:[documentsDirectory stringByAppendingPathComponent:@"savedDatasource.plist"] atomically:YES];
if (saved) {
//saved datasource to .plist file.
}
else if (!saved) {
//did not save;
}
Чтобы загрузить список из каталога документов, вам сначала нужно проверить, есть ли он:
if ([[NSFileManager defaultManager] fileExistsAtPath:[documentsDirectory stringByAppendingPathComponent:@"savedDatasource.plist"]]) {
countryMArray = [[NSMutableArray alloc] initWithContentsOfFile:[documentsDirectory stringByAppendingPathComponent:@"savedDatasource.plist"]];
}
else {
//it is not there, we need to write it to the documents directory
[datasource writeToPath:[documentsDirectory stringByAppendingPathComponent:@"savedDatasource.plist"] atomically:YES];
}
Удачи!