无法用带有约束的 UITableView 填充屏幕

Posted

技术标签:

【中文标题】无法用带有约束的 UITableView 填充屏幕【英文标题】:Cannot fill the screen with UITableView with constraints 【发布时间】:2017-12-01 17:07:24 【问题描述】:

我有 UIViewController,它包含一个 UIImageView 作为背景和一个放置在 UITableView 上的 UITableView。我使用了 4 个约束来使 UIImageView 填充所有设备的屏幕(O 顶部、O 右侧、0 底部、0 左侧)。它似乎有效。我对 UITableView 应用了相同的约束,但它的作用不同:

这真的很令人沮丧...这是限制条件:

【问题讨论】:

您是否在 Interface Builder / Storyboard 中设置约束?还是通过代码? 使用界面生成器/故事板! 【参考方案1】:

将 UITableView 放在屏幕上并将其与设备的所有边缘对齐。然后只需单击“解决自动布局问题”按钮并单击“添加缺少的约束”。

看看当你这样做时它增加了哪些约束。这将使您更好地了解设置边缘以匹配屏幕的正确方法。

【讨论】:

感谢您的回答,我们会这样做并给您反馈。谢谢!! 我已经尝试过,但仍然无法适应所有设备的屏幕,对于 7 plus,它仍然像我的帖子中显示的那样。我将添加约束 添加这样的约束在我在 iPhone 7 plus 模拟器上创建的示例项目中起作用。你做的事情一定与我的指示有些不同。无论哪种方式,尽管这些限制都可以解决您的问题。

以上是关于无法用带有约束的 UITableView 填充屏幕的主要内容,如果未能解决你的问题,请参考以下文章

填充行的其余部分/避免违反空约束

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

Xcode - 向 UITableView 添加约束,使其适合所有屏幕尺寸

带有按钮的尺寸等级和约束

UITableView 单元格未填充 CloudKit 数据

带有约束更新的 UITableViewCell 导致 UITableView 跳来跳去