我遇到一個奇怪的問題 這裏是我的方案,我有一個名爲需要進行優化計算和裝載的UITableView
-(void)fetch
{
for (Dog *aDog in allDogs)
{
if([aDog getNumberOfDaysFromToday]>=0)
{
[filteredArray addObject:aDog];
}
else
{
[tempArr addObject:aDog];
}
}
[filteredArray addObjectsFromArray:tempArr];
}
功能上述方法計算numberOfDaysFromToday並返回一個整數值。
我總是需要計算numberOfDaysFromToday,以便數據始終保持最新。
我有一個UITableView向我顯示當前數據。
現在的問題:
因爲我需要經常我使用viewWillAppear中調用該方法獲取。 但是,當我在裏面導航到其他視圖控制器並返回時,總是會調用此方法,因爲我的導航速度受到阻礙。因爲取方法,導航返回大約需要4-5秒。 我想知道的是,有什麼辦法可以加快getNumberOfDaysFromToday函數的速度嗎?或者任何人都可以告訴我一些其他解決方法嗎?
getNumberOfDaysToday:
-(int)getNumberOfDaysFromToday{
// Take the month and day of month of the event date
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc]init];
[dateFormatter setDateFormat:@"dd.MM"];
NSString *eventDateString = [dateFormatter stringFromDate:self.eventDate];
NSDate *newEventDate = [dateFormatter dateFromString:eventDateString];
NSString *currentDateString = [dateFormatter stringFromDate:[NSDate date]];
NSDate *newCurrentDate = [dateFormatter dateFromString:currentDateString];
NSDateComponents *components;
NSInteger days;
components = [[NSCalendar currentCalendar] components: NSDayCalendarUnit
fromDate: newCurrentDate toDate: newEventDate options: 0];
days = [components day];
return days;
}
顯示爲'getNumberOfDaysFromToday'方法的代碼。你處理了多少物品? – Wain
@爲了添加代碼,我正在處理大約963個對象 – vin