我很难从 UITableViewController 的 viewDidLoad 方法中添加 subview (UIView)

这有效:

[self.view addSubview:self.progView];

但是您可以看到表格单元格行通过 UIView progView 流血。

我试过这种方法:
[self.view.superview insertSubview:self.progView aboveSubview:self.view];

这是将 progView、UIView 添加到当前 View 上方的 super View 的尝试。当我尝试这个时, UIView 永远不会出现。

- 更新 -

以下是最新的尝试:
UIView *myProgView = (UIView *)self.progView; //progView is a method that returns a UIView

[self.tableView insertSubview:myProgView aboveSubview:self.tableView];
[self.tableView bringSubviewToFront:myProgView];

结果和[self.view addSubview:self.progView]一样; UIView 出现但似乎在表后面。

最佳答案

我尝试了上面的方法,但没有让它起作用。我还发现它需要太多的配置和代码,因为它需要从头开始设置表格 View (这在 Storyboard中很容易完成)。

相反,我将要添加到 UITableView 上方的 View 添加到 UITableViewController 的 UINavigationController View 中,如下所示:

[self.navigationController.view addSubview:<view to add above the table view>];

这种方法要求你已经将 UITableViewController 嵌入到 UINavigationController 中,但即使你不想要导航 Controller ,你仍然可以使用这种方法,只需隐藏导航栏。

关于iphone - 如何在当前 UITableViewController 上方添加 UIView,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4641879/

10-14 22:20