gpt4 book ai didi

ios - 对静态单元格使用 UITableViewAutomaticDimension 后,单元格高度太小

转载 作者:行者123 更新时间:2023-11-28 10:53:51 25 4
gpt4 key购买 nike

在对静态单元格使用 UITableViewAutomaticDimension 之后(这是“正确的细节单元格”,所以我不能对单元格的高度设置任何约束)

单元格的高度变小了。有没有什么办法解决这一问题? :(

提前致谢!

What I was expecting(image)

How it shows(image)

代码:

override func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
return UITableViewAutomaticDimension
}

override func tableView(_ tableView: UITableView, estimatedHeightForRowAt indexPath: IndexPath) -> CGFloat {
return 65
}

override func viewWillAppear(_ animated: Bool) {
tableView.estimatedRowHeight = 65
tableView.rowHeight = UITableViewAutomaticDimension
}

编辑:

在使用 UITableViewAutomaticDimension 时,似乎没有办法在没有 constraint 的情况下扩展高度,所以我手动设置了 rowHeight :

struct DeviceSize {
static let iPhoneSE = (width:Float(320.0), height:Float(568.0))
static let iPhone7 = (width: Float(375.0), height:Float(667.0))
static let iPhone7P = (width: Float(414.0), height:Float(736.0))
}

override func tableView(_ tableView: UITableView,
heightForRowAt indexPath: IndexPath) -> CGFloat {
let height = Float(UIScreen.main.bounds.size.height)
switch height {
case DeviceSize.iPhoneSE.height:
return 55
case DeviceSize.iPhone7.height:
return 60
case DeviceSize.iPhone7P.height:
return 65
default:
return 65
}
}

最佳答案

如果您使用自动尺寸,则单元格高度将自动计算。手动设置行高。

不需要这些行

override func tableView(_ tableView: UITableView, estimatedHeightForRowAt indexPath: IndexPath) -> CGFloat {
return 65
}
override func viewWillAppear(_ animated: Bool) {
tableView.estimatedRowHeight = 65
tableView.rowHeight = UITableViewAutomaticDimension
}

解决方案:

    override func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {

if indexPath.row == 0{
//.... return height whatever you want for indexPath.row
return 40
}else {
return 30
}
}

关于ios - 对静态单元格使用 UITableViewAutomaticDimension 后,单元格高度太小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44844436/

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