如何阻止 UIView 与 tableview 一起滚动?

Jam*_*hen 1 uitableview uiview ios swift

我有一个 UITableViewController,我将 UIView 放在导航项的正下方和实际表格的上方。我遇到的问题是视图与表视图一起滚动。

我如何让它的行为与导航栏完全相同,并使表格视图中的项目在其后面滚动。

与其让视图滚动,不如让它保持在原来的位置,让所有东西都在它后面。抱歉重申,但我发现有时这是必要的。

在此输入图像描述

rob*_*off 5

您放置在故事板中单元格上方的视图将成为表视图的tableHeaderView.

您可以通过每次表视图布置其子frame.origin视图时将其重置为表视图来使标题视图看起来固定:bounds.origin

- (void)viewDidLayoutSubviews {
    [super viewDidLayoutSubviews];

    UIView *header = self.tableView.tableHeaderView;
    CGRect frame = header.frame;
    frame.origin = self.tableView.bounds.origin;
    header.frame = frame;
}
Run Code Online (Sandbox Code Playgroud)

结果:

固定表视图标题的演示