UITableViewCell的默认高度是多少?

时间:2009-02-27 13:57:08

标签: ios iphone uitableview

我认为这些信息更容易找到: - )

UITableViewCell的默认高度是多少?它看起来像44像素,但我更愿意确定。

8 个答案:

答案 0 :(得分:356)

这是44像素。当然。我永远不会忘记这个号码。

44px也是UIToolbar和UINavigationBar的默认高度。 (当自动旋转到横向时,两者都切换到32像素。)

答案 1 :(得分:23)

如果您想在任何设备上使用默认尺寸:UITableViewAutomaticDimension

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

    return UITableViewAutomaticDimension;
}

虽然目前默认为44像素,但如果您的应用依赖于设置默认值,这是一种有用的方法。

答案 2 :(得分:16)

style = UITableViewStyleGrouped时,顶部的默认高度为;底部单元格实际上是45.0f(不是44.0f)。并且,如果分组表只有一行,则单元格高度为46.0f

答案 3 :(得分:10)

如果要动态计算,只需分配一个虚拟表格单元并读取其高度

UITableViewCell *cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"Cell"];
int height = cell.frame.size.height ;

这样你可以防御iOS未来版本的变化,虽然我认为这不太可能。

答案 4 :(得分:3)

“当style = UITableViewStyleGrouped时,顶部和底部单元格的默认高度实际上是45.0f(不是44.0f)。而且,如果分组表格只有一行,则单元格高度将为46.0f。” 这是不对的!!事实上44.0f!我只是测试它!

答案 5 :(得分:2)

这听起来不错。但是为了确保您可以加载“接口”构建器,将UITableViewCell放入项目中,然后在“检查器”窗口中检查大小属性。我现在没有我的MacBook,所以我无法检查。但如果你没有得到某人更好的答案,那就是你自己检查的方法。

答案 6 :(得分:0)

在iOS 12上,类似iPhone X的设备(X,XS,XS Max,XR)的默认高度为 49pt

iOS 12上的其他设备仍默认为 44pt 。 这是一个细微的差异,但是在直接比较中感觉像是一个很好的改进。

如果您不相信我,请在此屏幕截图中为自己测量(不要忘了除以3)...;)

答案 7 :(得分:0)

Swift 4 Swift 5 中,只需使用:

UITableView.automaticDimension

使用44px不够用,因为它会随屏幕像素密度的不同而变化。