gpt4 book ai didi

ios - 如何为一个表格 View 加载两个自定义表格 View 单元格

转载 作者:行者123 更新时间:2023-11-29 01:15:58 25 4
gpt4 key购买 nike

我想使用两个自定义 tableviewcells(两个 nib 文件),例如第一行的第一个自定义 View 和第二行的第二个自定义 View 。但第一个 tableviewcell 未加载。每行仅显示第二行。下面是我使用的代码,

在viewdidload中,我已经注册了

UINib *nib = [UINib nibWithNibName:@"TableViewCell" bundle:nil];
[self.mainTableView registerNib:nib forCellReuseIdentifier:CellIdentifier1];

nib = [UINib nibWithNibName:@"SecondTableViewCell" bundle:nil];
[self.mainTableView registerNib:nib forCellReuseIdentifier:CellIdentifier2];


- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

//UITableViewCell *cell;

static NSString *CellIdentifier1 = @"TableViewCell";
static NSString *CellIdentifier2 = @"SecondTableViewCell";


if (indexPath == 0) {
TableViewCell *cell = (TableViewCell*)[tableView dequeueReusableCellWithIdentifier:CellIdentifier1];
return cell;
} else {
SecondTableViewCell* cell = (SecondTableViewCell*)[tableView dequeueReusableCellWithIdentifier:CellIdentifier2];
// Load the top-level objects from the custom cell XIB.
cell.questionLbl.text = [NSString stringWithFormat:@"%ld",indexPath.row+1];
//cell.questionName.text = [self.questionsArray objectAtIndex:indexPath.row];
// Grab a pointer to the first object (presumably the custom cell, as that's all the XIB should contain).
return cell;
}


return nil;
}

最佳答案

1)更改此行即可工作

if (indexPath.row == 0) { 
TableViewCell *cell = (TableViewCell*)[tableView dequeueReusableCellWithIdentifier:CellIdentifier1];
return cell;
}

2) 每次它返回标识符为 2 的单元格,因为 indexPath 不会为 nil

关于ios - 如何为一个表格 View 加载两个自定义表格 View 单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35177937/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com