我有我的可用數據填充numberOfRowsInSection
內的當前部分。然後我希望它調用cellForRowAtIndexPath
,以便我可以使用這些數據。我在numberOfRowsInSection
我覆蓋了上一節的數據。做NSLog
它顯示numberOfRowsInSection
運行的第一個cellForRowAtIndexPath
之前的所有149個部分...爲什麼?iOS:cellForRowAtIndexPath不會在numberOfRowsInSection後立即調用
我已經刪除了調用reloadData
,因爲我看到這是其他人在堆棧溢出問題,但沒有解決問題。
每吉姆我正在添加我在做什麼。
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
NSMutableArray *tempArray = [NSMutableArray array];
FMResultSet *appointmentResults = [[DataClass getDB] executeQuery:@"SELECT * FROM Appointments WHERE date = ?",[self.appointmentDates objectAtIndex:section]];
int rowCount = 0;
while ([appointmentResults next]) {
[tempArray addObject:[appointmentResults resultDict]];
rowCount++;
}
self.appointments = tempArray;
NSLog(@"Appointments: %@ - %i", [self.appointmentDates objectAtIndex:section], rowCount);
return rowCount;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
//Parse the appointments for the current section and display them
}
@jostster爲什麼這會對您的應用程序有所幫助? – bneely 2012-02-23 17:17:44
你所描述的聽起來很奇怪。首先,你不應該在'numberOfRowsInSection'中覆蓋任何東西。它應該只返回一個整數。可能需要更準確的細節。但我相信,一旦UITableView將這些委託方法踢掉,它就打算更新其視圖中的某些內容。但它應該只是詢問可見的部分和行。 – Jim 2012-02-23 17:20:10
@Jim我修改了我的OP來顯示我在做什麼。 – Bot 2012-02-23 17:22:51