gpt4 book ai didi

ios - UITableViewCell 中的 UILabel 未使用自动布局调整大小?

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

我正在使用自动布局。在自定义 UITableViewCell 中添加了一个具有最大宽度的 UILabel。我尝试了很多方法,以便如果文本较少。它应该缩小或者如果文本更多应该增加标签的高度。

我尝试在 CellForRowAtIndex 中制作 UILabel ,出于显而易见的原因,这是个坏主意。然后我尝试在 Label 的 Font 和 Width 的帮助下获取 CGSize 。它在缩小但不合适,为了实现它我必须重新绘制约束。基本上我尝试的解决方案在视觉上并不吸引人。请帮助我。我附上了当前屏幕状态的图片

谢谢 enter image description here

最佳答案

//Array of name
NSMutableArray *nameArray;

//take outlet of height constraint in custom cell;
@property(weak) IBOutlet NSLayoutConstraint *labelHeightConstraint;


-(void)viewDidLoad
{
_nameArray=[NSMutableArray arrayWithObjects:,@"I am using Auto-layout. In Custom UITableViewCell added a UILabel with max width.",@"Hi I am Rohit",@"I Like To Help Society" ,nil];
}


- (UITableViewCell*)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
CustomerRatingsCell *customerRatingsCell=[tableView dequeueReusableCellWithIdentifier:@"CustomerRatingsIdentifier"];
customerRatingsCell.labelName=[_nameArray objectAtIndex:indexPath.row];
customerRatingsCell.headerLabelConstraint=[self getLabelHeight:[NSString stringWithFormat:@"%@",[_nameArray objectAtIndex:indexPath.row]]];
return CustomerRatingsCell;

}

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{

return [self getLabelHeight:[NSString stringWithFormat:@"%@",[_nameArray objectAtIndex:indexPath.row]]]+25 ;//plus 25 is remaining space apart from label height, if you are using the full height label equals to cell height then don't add it.

}



- (CGFloat)getLabelHeight:(NSString*)textLabel
{
CGRect textRect = [textLabel boundingRectWithSize:CGSizeMake(300, CGFLOAT_MAX) options:NSStringDrawingUsesLineFragmentOrigin|NSStringDrawingUsesFontLeading attributes:@{NSFontAttributeName:[UIFont fontWithName:Avenir Roman size:12.0f]} context:nil];

CGSize expectedLabelSize = CGSizeMake(textRect.size.width, textRect.size.height);

return expectedLabelSize.height;
}

关于ios - UITableViewCell 中的 UILabel 未使用自动布局调整大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27618039/

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