您好我正在尝试根据textlabel和detailtextlabel动态更改行高。
以下是我的代码:
NSString *title = [NSString stringWithFormat:@"%@%@%@",_note.committeeStaffName,@" - ",_note.dateCreated];
cell.textLabel.text = title;
cell.detailTextLabel.text = _note.note;
我正在尝试根据textLabel和detailTextLabel调整表格行的高度。 textLabel不会超过一行。 detailTextLabel包含不同长度的大型文本。我已经阅读了几个委托方法heightForRowAtIndexPath的例子,但是没有一个明确说明在方法heightForRowAtIndexPath中应该做什么以及在cellForRowAtIndexPath中应该使用什么代码。任何人都可以清楚地解释在两个方法heightForRowAtIndexPath和cellForRowAtIndexPath中应该根据包含textLabel和detailTextLabel的内容来调整表行高度的代码。
答案 0 :(得分:0)
我想帮你解决你的问题。希望它会对你有所帮助。
-(CGFloat)getLabelHeightForIndex:(NSString*)strTemplate{
CGSize maximumSize = CGSizeMake(tblView.frame.size.width-50, 20000);
NSString* result = [strTemplate stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];
strTemplate = result;
CGSize labelHeighSize = [strTemplate sizeWithFont: [UIFont fontWithName:@"HelveticaNeue-Light" size:14.0] constrainedToSize:maximumSize lineBreakMode:NSLineBreakByWordWrapping];
return labelHeighSize.height;
}
你应该使用上面的方法来获取任何一个Label的高度,即textLabel或defaulttestLabel,然后在tableView单元格中的另一个中心管理另一个视图。