gpt4 book ai didi

ios - UITableViewCell 中的 Size Class 自定义

转载 作者:塔克拉玛干 更新时间:2023-11-02 10:00:28 25 4
gpt4 key购买 nike

我在 UITableViewCell 中包含的 UIImageView 中有一个高度限制,我希望 iPhone 为 180,iPad 为 300。

enter image description here enter image description here

但它对 iPad 没有任何影响。

这是一个带有自动维度的 TableView 。

- (void)configureTableView {
self.tableView.allowsSelection = NO;
self.tableView.estimatedRowHeight = 30.f;
self.tableView.rowHeight = UITableViewAutomaticDimension;
}

如何为 iPad 自定义单元格的高度?

更新:我通过实现委托(delegate)方法修复了它:

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
CGFloat height = -1;
if (indexPath.section == kQuizControllerSection_Description && indexPath.row == kDescriptionQuizCell_PreviewImage) {
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
height = 400;
}
else {
height = 180;
}
}
return height;
}

因为其他单元格是动态调整大小的(具有多行标签的单元格),方法对每个其他单元格返回负数。这是正确的做法吗?

最佳答案

我只有与单元格高度相同的 UIImageView ....然后只需固定 UIImageView 的所有边缘然后就不需要 UIImageView 的高度约束...

你只需要在 heightForRowAtIndexPath 方法中根据设备设置单元格的高度

func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat {

if UIDevice.currentDevice().userInterfaceIdiom == .Pad{
return 300
}
else{
return 180
}
}

UIImageView 与单元格高度不同的另一种情况....然后制作一个 UIImageView 高度约束的 IBOutlet,然后根据您的要求更改常量...

    if UIDevice.currentDevice().userInterfaceIdiom == .Pad{
heightconstraint.constant = 300
}
else{
heightconstraint.constant = 180
}

关于ios - UITableViewCell 中的 Size Class 自定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31464313/

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