调整UITableViewCell的大小以适合不同的屏幕尺寸

Link Openheim

我当前的问题是尝试为不同的iOS屏幕尺寸调整有限数量的单元格[3]。目前,我的原型单元格的大小为600x300,可以选择任意大小的x,并且非常适合iPhone6。但是,当我尝试使用其他任何屏幕尺寸时,单元格要么太大,要么必须滚动[ iPhone 6]或尺寸不够大[iPhone 6 +,iPad等]

单元格中都有一个UIImageView,并且可以正确调整其宽度,但不能正确调整其高度。

我只是将一些样机照片放在表格单元格中,以使自己对我的目标有所了解。我希望它不必滚动到我认为您可以在TableViewController中实现以下行的地方:

tableView.scrollEnabled = false
Link Openheim

我最终在@ schmidt9和@VinodVishwanath的帖子的帮助下弄清楚了这一点。为了正确地计算您希望内容进入的屏幕的大小,您必须减去导航栏和状态栏的空间(时间,电池等)。以下几行可以执行此操作:

要查找导航栏的大小,请执行以下操作:

self.navigationController!.navigationBar.frame.size.height

要查找包括导航栏和状态菜单在内的总屏幕尺寸,请执行以下操作:

UIScreen.mainScreen().fixedCoordinateSpace.bounds.height

在所有设备上,状态栏始终为20,因此您可以简单地将其减去。您最终将获得以下代码:

let screenHeight = UIScreen.mainScreen().fixedCoordinateSpace.bounds.height - self.navigationController!.navigationBar.frame.size.height - 20
    self.tableView.rowHeight = screenHeight / 3

将其更多地用数学方程式表示:总屏幕-导航栏-20(来自状态栏)=总工作空间

希望对您有所帮助,请发表评论以获取进一步说明。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使我的网站自动调整以适合不同的屏幕尺寸?

调整div大小以适合屏幕

不同的布局,适合不同的屏幕尺寸

Flutter是否会自动调整元素(图标,图像等)的大小以适合屏幕尺寸?

调整图像大小,使其适合屏幕大小

Windows Phone 8.1不同的文字大小适合不同的屏幕尺寸

在较小的屏幕尺寸上适合内容的大小

UITableViewCell调整大小以适合详细文本

如何调整访问表单的大小以适合屏幕

自动调整图像大小以适合屏幕

自动调整表格大小以适合屏幕

自动调整按钮大小以适应屏幕尺寸?

根据屏幕尺寸调整对象大小

如何使该网页适合任何屏幕尺寸或不同尺寸?

如何针对不同的屏幕尺寸动态调整文字大小和边距?

这是针对不同屏幕尺寸调整文本大小(在 TextView 中)的最佳做法

SwiftUI如何调整不同的屏幕尺寸

调整按钮以适应不同的屏幕尺寸

如何调整导航栏按钮的大小并使其适合屏幕宽度?

如何调整形状的大小以适合屏幕并使其居中对齐?

导航栏无法调整大小以适合手机屏幕

fabric.js调整画布大小以适合屏幕

RecyclerView + GridLayoutManager:调整项目大小以适合屏幕并保留比例

如何调整图像大小以设置为适合屏幕的墙纸

不同屏幕的布局调整大小问题

如何随着屏幕尺寸的变化调整 div 的大小?

如何根据屏幕尺寸调整页面上Divs的大小?

如何根据屏幕尺寸调整网格图像的大小?

如何在不同的屏幕尺寸上调整页脚