UITableView 不会在 iPad 上填满整个屏幕

Posted

技术标签:

【中文标题】UITableView 不会在 iPad 上填满整个屏幕【英文标题】:UITableView does not fill out entire screen on iPad 【发布时间】:2016-08-08 18:24:13 【问题描述】:

我在Main.storyboard 中添加了一个UITableView,而没有设置任何其他属性。在 iPhone 上,表格以纵向和横向模式填充,完整的屏幕,这是所需的行为。但是,在 iPad 上启动应用程序时,表格如下所示:

当我向表格视图添加以下约束时:

领先空间到容器边距 容器边距的尾随空间 与顶部布局指南的垂直间距 到底部布局指南的垂直间距

问题在 iPad 上已解决(纵向和横向模式),但在 iPhone 上横向模式下的第一个单元格被隐藏:

我该如何解决这个问题?在 iPhone 的纵向模式下不会出现此问题,在 iPad 上两种模式下也不会出现此问题。

顺便说一句,控制器属性“调整滚动视图插图”已启用。

【问题讨论】:

【参考方案1】:

对于插图,请在下面添加此代码

 -(void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath

if ([tableView respondsToSelector:@selector(setSeparatorInset:)]) 
    [tableView setSeparatorInset:UIEdgeInsetsZero];


if ([tableView respondsToSelector:@selector(setLayoutMargins:)]) 
    [tableView setLayoutMargins:UIEdgeInsetsZero];


if ([cell respondsToSelector:@selector(setLayoutMargins:)]) 
    [cell setLayoutMargins:UIEdgeInsetsZero];


为了使 tableView 适合所有设备,使其适合整个屏幕,请添加下面显示的约束。

生成的 TableView 将是

【讨论】:

非常感谢!不过,添加您在第一个屏幕截图中显示的约束就足够了。 欢迎伴侣,享受编码

以上是关于UITableView 不会在 iPad 上填满整个屏幕的主要内容,如果未能解决你的问题,请参考以下文章

UITableView, setContentOffset 动画:NO 不会在 iPad 上滚动

应用程序不会填满设备屏幕,启动屏幕也不会自动旋转

扩展且灵活,不会填满整行

iPad 模拟器上的 SKScene 问题无法在 Xcode 11 beta 7 中填满屏幕

编辑模式下的 UITableView 在 iPad 上不显示复选标记

为 iPad 重新缩放 UITableView?