gpt4 book ai didi

ios - dequeueReusableCellWithIdentifier 导致空白表格单元格

转载 作者:行者123 更新时间:2023-11-29 13:10:56 24 4
gpt4 key购买 nike

我的目标是显示一个单元格列表,这些单元格由我从服务器上提取的一些数据填充。当用户向下滚动时,我希望有一个表格单元格,上面写着“正在加载更多”,然后随着更多单元格被数据填充而消失。

以下是执行此操作的相关部分:

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

[tableView registerClass:[CGSitesCell class] forCellReuseIdentifier:cellIdentifier];
// Option 1: CGSitesCell *cell = [[CGSitesCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:cellIdentifier];
// Option 2: CGSitesCell *cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier forIndexPath:indexPath];
//(Still Option 2):
//if(cell == nil){
// cell = [[CGSitesCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:cellIdentifier];
}
if(backupsArray.count !=0){
//if we not on the last row
if (indexPath.row < backupsArray.count) {
[cell.textLabel setText:someData];
}else{
UITableViewCell *cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault
reuseIdentifier:cellIdentifier];
[cell.textLabel setText:@"Load More"];
return cell;
}
return cell;
}

这是让我难过的地方:选项 1 有效。我看到我想看的数据和底部的加载更多。但是,选项 2 不起作用!我看到了数据,但我只看到一个空白表格单元格。为什么?

谢谢!

最佳答案

我遇到了你的问题,不知道你是否发现了问题,但如果你的自定义单元格是使用 Interface Builder 构建的,那么你应该注册 Nib,而不是类:

    [self.tableView registerNib:[UINib nibWithNibName:@"CGSitesCell" bundle:nil] forCellReuseIdentifier:@"CGSitesCellIdentifier"];

请在 ViewDidLoad 中执行此操作,而不是在为所有单元格调用的 cellForRowAtIndexPath 中执行:-)

关于ios - dequeueReusableCellWithIdentifier 导致空白表格单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17396042/

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