我在TableViewCell中定义了一些标签,并让我的程序将NSDictionary中的信息读入单元格。但当我运行它时,我的tableview的第一行是空白的,其余的行是'显示正常。 我尝试使用NSLog来捕获传递给单元格的内容,答案与NSDictionary中的内容相同。 哪里可能错了?
这是我的代码的一部分:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *TableSampleIdentifier = @"TableSampleIdentifier";
TakeAwayCell *cell = [tableView dequeueReusableCellWithIdentifier: TableSampleIdentifier];
if (!cell)
{
cell = [ [TakeAwayCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:TableSampleIdentifier]; //'UITableView dataSource must return a cell from tableView:cellForRowAtIndexPath:'error without this line
UINib *nib = [UINib nibWithNibName:@"TakeAwayCell" bundle:nil];
[tableView registerNib:nib forCellReuseIdentifier:TableSampleIdentifier];
}
NSUInteger row = [indexPath row];
cell.image = self.list[row][@"image"];
cell.name = self.list[row][@"name"];
cell.addr = self.list[row][@"addr"];
NSLog(@"%@",cell.name);
return cell;
}
答案 0 :(得分:0)
请检查self.list
的索引。它可能从N SUInteger row = [indexPath row];
答案 1 :(得分:0)
拿这个你的代码:
UINib *nib = [UINib nibWithNibName:@"TakeAwayCell" bundle:nil];
[tableView registerNib:nib forCellReuseIdentifier:TableSampleIdentifier];
您的视图确实加载并仅保留单元格创建委托上的分配。
答案 2 :(得分:0)
tableview
对齐到屏幕顶部。