我很难从UITableViewController的viewDidLoad方法中添加子视图(UIView
这是可行的:
[self.view addSubview:self.progView];
但是您可以看到表格单元格线在UIView progView中溢出。
我尝试过这种方法:
[self.view.superview insertSubview:self.progView aboveSubview:self.view];
这是将progView、UIView添加到当前视图上方的超级视图的尝试。当我尝试这样做时,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出现在表的后面。
发布于 2013-02-13 04:38:37
我尝试了上面的方法,但没有得到它的工作。我还发现它需要太多的配置和代码,因为它需要从头开始设置表视图(在故事板中可以很容易地完成)。
相反,我将想要添加到UITableView上方的视图添加到UITableViewController的UINavigationController的视图中,如下所示:
[self.navigationController.view addSubview:<view to add above the table view>];
此方法要求您已将UITableViewController嵌入到UINavigationController中,但即使您不想要导航控制器,您仍然可以使用此方法,只需隐藏导航栏。
发布于 2014-04-07 03:28:48
您可以增加视图所在图层的zPosition。
这将使其显示在其他视图(默认情况下,zPosition等于0 )之上。
self.progView.layer.zPosition++;
[self.view addSubview:self.progView];
发布于 2016-06-25 23:09:11
由于UITableViewController是UIViewController的子类,因此您需要将所需的视图添加到其superview中。
Swift:
self.view.superview?.addSubview(viewTobeAdded)
Objective C:
[self.view.superview addSubview: viewTobeAdded];
https://stackoverflow.com/questions/4641879
复制相似问题