gpt4 book ai didi

iphone - 更改 UITableView Customcell 的高度

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

我已经使用自定义单元实现了 UITableView,

我想做的是,我想根据文本长度改变高度UITableViewCell,(动态高度)

这是我的代码片段,

#define FONT_SIZE 14.0f
#define CELL_CONTENT_WIDTH 320.0f
#define CELL_CONTENT_MARGIN 10.0f


- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath;
{
NSString *text = [DescArr objectAtIndex:[indexPath row]];
CGSize constraint = CGSizeMake(CELL_CONTENT_WIDTH - (CELL_CONTENT_MARGIN * 2), 20000.0f);
CGSize size = [text sizeWithFont:[UIFont systemFontOfSize:FONT_SIZE] constrainedToSize:constraint lineBreakMode:UILineBreakModeWordWrap];
CGFloat height = MAX(size.height, 55.0);

return height;
}

UITableViewCell 的高度正确更改,但 CustomCell 的高度没有更改,

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

static NSString *CellIdentifier = @"BTSTicketsCellIdentifier";
CRIndCoupnCell *cell = (CRIndCoupnCell *)[tblDescriptn dequeueReusableCellWithIdentifier:CellIdentifier];

if (cell == nil)
{
NSArray *nib = [[NSBundle mainBundle] loadNibNamed:@"CRIndCoupnCell" owner:self options:nil];
for (id oneObject in nib) if ([oneObject isKindOfClass:[CRIndCoupnCell class]])
cell = (CRIndCoupnCell *)oneObject;
}

NSLog(@"cell.frame.size.height=%f",cell.frame.size.height);

cell.lblleft.text=[arr objectAtIndex:indexPath.row];
cell.lblRight.text=[DescArr objectAtIndex:indexPath.row];

return cell;
}

我的日志在所有行中显示cell.frame.size.height=100.0。 CustomCell 的高度不会改变。

:我哪里出错了?请帮忙。

提前致谢

最佳答案

您将字符串的大小限制为单元格全宽减去单元格边距的 2 倍,最大高度为 2000,但由于您将字符串设置为带有绿色文本颜色的标签文本,因此您应该检查根据该标签的宽度和任意高度 2000 或您选择的任何值确定尺寸。

CGSize constraint = CGSizeMake(MYGREENLABEL_WIDTH, 2000);

关于iphone - 更改 UITableView Customcell 的高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18530616/

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