我想制作这种单元格,根据地址长度低于时间" 5:30"包含可变高度,我想用xib制作这种单元格。
第二件事:当用户点击单元格区域时,单元格将被展开,所有其他字段将变为可见。 我想通过使用xib来实现这一切
答案 0 :(得分:0)
您好,您可以通过设置UITableView Cell的动态高度来实现,
在Tableview单元格中的heightForRowAtIndexPath事件使用以下代码按文本返回自定义高度,
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
NSString *text;
text = @"You can pass your text here";
CGSize constraint = CGSizeMake(300, 20000.0f);
CGSize size = [text sizeWithFont:[UIFont fontWithName:@"Helvetica neue" size:13.0] constrainedToSize:constraint lineBreakMode:UILineBreakModeWordWrap];
CGFloat height = size.height;//MAX(size.height, 44.0f);
return height;
}
并在索引路径中的行的单元格中设置要显示地址的标签高度
NSString *text = @"your text of address goes here";
CGSize constraint = CGSizeMake(cell.lblAddress.frame.size.width, 20000.0f);
CGSize size = [text sizeWithFont:cell.lblAddress.font constrainedToSize:constraint lineBreakMode:UILineBreakModeWordWrap];
CGFloat height = size.height;
CViewSetY(cell.lblAddress, 0);
CViewSetHeight(cell.lblAddress, height);
[cell.lblAddress setNumberOfLines:0];