У меня есть uitableview со списком выборки методов, который запускается каждые 5 секунд. когда в основных данных для этой записи есть обновленные данные, метод списка выборки не обновляет последние в своем массиве. таким образом, когда я перезагружаю данные, он всегда показывает «старую» запись.
Я вызываю этот метод с последующей перезагрузкой данных в uitableview.
это мой метод получения списка:
- (void) fetchList:(int) listNo{
// Define our table/entity to use
self.marketWatchListArray = nil;
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Market_watch" inManagedObjectContext:context];
// Setup the fetch request
NSFetchRequest *request = [[NSFetchRequest alloc] init];
[request setEntity:entity];
Mobile_TradingAppDelegate *appDelegate = (Mobile_TradingAppDelegate *)[[UIApplication sharedApplication] delegate];
NSPredicate *getList = [NSPredicate predicateWithFormat:@"(list_id == %d) AND (userID == %@)", listNo, appDelegate.user_number];
[request setPredicate:getList];
NSSortDescriptor *sortByName = [[NSSortDescriptor alloc] initWithKey:@"stockName" ascending:YES];
[request setSortDescriptors:[NSArray arrayWithObject:sortByName]];
// Fetch the records and handle an error
NSError *error;
NSMutableArray *mutableFetchResults = [[context executeFetchRequest:request error:&error] mutableCopy];
if (!mutableFetchResults) {
// Handle the error.
// This is a serious error and should advise the user to restart the application
}
// Save our fetched data to an array
[self setMarketWatchListArray: mutableFetchResults];
[mutableFetchResults release];
[request release];
}
странно то, что таблица не обновляется до последней, когда таймер запускает fetchlist: 1. Когда я переключаюсь на fetchlist: 2, а затем обратно на fetchlist: 1, таблица обновляется самой последней.
У меня есть сегмент-регулятор для переключения между различными списками.