gpt4 book ai didi

ios - 如何在 UITableView 静态单元格中动态更改单元格高度

转载 作者:可可西里 更新时间:2023-11-01 03:25:29 25 4
gpt4 key购买 nike

我正在使用 UITableViewController 而不是 detailView 来显示一个实体的详细信息。我在 viewDidLoad 方法中填充了来自 PFQuery 的一行数据。我有一个使用标签的单元格,我想根据 NSString 大小更改大小。我检查了很多答案,但所有答案都与 indexPath 有关,它是动态的,我有静态单元格。 我的标签 显示完整的字符串,但我的单元格是固定的。如何更改单元格的高度?请帮我解决这个问题。

这是我的代码:

- (void)viewDidLoad
{
[super viewDidLoad];
PFQuery *query = [PFQuery queryWithClassName:@"Entities"];
[query whereKey:@"name" equalTo:entityName];
[query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {
if (!error) {
PFFile *thumbnail = [objects[0] objectForKey:@"image"];
detailsImageView.image = [UIImage imageNamed:@"loader.gif"];
detailsImageView.file = thumbnail;
[detailsImageView loadInBackground];
detailLabel.numberOfLines = 0; // this label need dynamic height and its cell
detailLabel.text = [objects[0] objectForKey:@"descriptionLarge"];
[detailLabel sizeToFit];
} else {
NSString *errorString = [[error userInfo] objectForKey:@"error"];
NSLog(@"Error: %@", errorString);
}
}];
}

我正在尝试通过选择单个单元格来执行以下操作,但它给了我 UITableView 错误,因为我没有定义 tableView,我该如何定义,或者如果您有任何其他好的解决方案,请告诉我。

static NSString *simpleTableIdentifier = @"DetailsDesecriptionCell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:simpleTableIdentifier];

我也乐于接受有关编码质量的批评,因此您的反馈对我很有值(value)。

最佳答案

如果是 IOS 8 或 9,有一个简单的修复。

  1. 为 UILabel 设置约束。 (上、左、下、右)
  2. 将 UILabel 的行设置为 0
  3. 在ViewController的viewDidLoad方法中添加如下代码:
tableView.estimatedRowHeight = 68.0
tableView.rowHeight = UITableViewAutomaticDimension
  1. 覆盖函数:
override func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat {
return UITableViewAutomaticDimension
}

关于ios - 如何在 UITableView 静态单元格中动态更改单元格高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25420980/

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