在应用中,我设置cell
height
iPhone 8 Plus
来修复100分。在iPhone 5s
中看起来很正常。但是当我运行app时,例如在iPhone 6
或iOS
表格中,单元格在界面中看起来非常大。如何为不同的>> class(motifIndexAfterThresholds)
ans =
'double'
设备设置单元格高度?
答案 0 :(得分:0)
您可以设置相对于屏幕高度或tableView高度的高度 例如:
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat
{
return tableView.frame.size.height/6
}
答案 1 :(得分:0)
快速解决方案可能是
override func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
return 100 * self.tableView.frame.size.height / HEIGHT_OF_TABLE_IN_IPHONE_8_PLUS
}
此处记下self.tableView.frame.size.height
,将HEIGHT_OF_TABLE_IN_IPHONE_8_PLUS
替换为该高度。它显然会根据设备高度给出比例高度。
答案 2 :(得分:0)
请注意我认为这是在不同设备中显示单元格的预期行为。您可能会注意到,如果您在iPhone 8 plus和iPhone 5s上打开联系人 - 例如 - ,您会注意到iPhone 8 Plus显示的联系人数量小于iPhone 5s的小屏幕。
但是,如果您的目标是根据屏幕高度使单元格的高度成比例,则可以通过实现tableView(_:heightForRowAt:)
委托方法来实现,如下所示:
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
let screenHeight = UIScreen.main.bounds.height
return screenHeight / 10
}
意味着无论设备是什么,单元格的高度都是屏幕高度的10%。