gpt4 book ai didi

ios - 尽管有标签和按钮,可重用的 UITableViewCells 显示为 null

转载 作者:行者123 更新时间:2023-11-29 03:10:21 25 4
gpt4 key购买 nike

我正在使用以下代码设置表格 View :

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

static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if(!cell){
cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
UILabel *text = [[UILabel alloc]initWithFrame:CGRectMake(10, 5, 300, 40)];
[cell.contentView addSubview:text];
text.tag = 1;
}
cell.selectionStyle = UITableViewCellSelectionStyleNone;
UILabel *text = (UILabel*)[cell.contentView viewWithTag:1];
text.text = [subjects objectAtIndex:indexPath.row];
return cell;
}

它工作得很好,直到我尝试使单元格在 if(!cell) 语句中可重用,有人知道问题是什么。为了使单元格可重复使用,我检查了 this question而且,我认为复制正确。

最佳答案

试试这个

-(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];
}
for (UIView *view in cell.contentView.subviews) {
[view removeFromSuperview];
}
UILabel *text = [[UILabel alloc]initWithFrame:CGRectMake(10, 5, 300, 40)];
[cell.contentView addSubview:text];
text.backgroundColor=[UIColor redColor];
text.textColor=[UIColor blueColor];
if(subjects[indexPath.row].lenght==0)
{
text.text=@"this object is null";
}
else
{
text.text = subjects[indexPath.row];
}
return cell;
}

希望对你有帮助

关于ios - 尽管有标签和按钮,可重用的 UITableViewCells 显示为 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22314055/

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