我正在构建一个iphone应用程序,当我运行我的应用程序时,我有一个包含99条记录的数组,然后cellForRowAtIndexPath
方法从0到7返回indexPath.row
。这是我的代码
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
return 1;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return [[accountParser accounts]count];//it return 99 records
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
NSLog(@"Index : %d",indexPath.row);//this print index 0 to 7 only
}
return cell;
}
答案 0 :(得分:5)
当您显示UITableView时,它只会为可见行调用tableView:cellForRowAtIndexPath :.这意味着只有当您滚动视图时,它才会调用其他行(在您的情况下为8到99)。