我有一个NavigationController,并且我想要从屏幕顶部制作一个视图,并且坐在上方navigationBar上方。我从xib初始化视图控制器,当我将它添加为[self.view addSubview:myView];
时,它完美地工作,但它位于导航栏下方。当我尝试将其添加为[self.navigationController.view addSubview:myView];
时,它会按照预期将其放置在navigationBar的顶部,但视图不会显示放置在xib中的任何子视图。我不明白为什么会发生这种情况,一直试图解决这个问题好几个小时。当作为NavigationController的视图的子视图添加时,iOS视图不显示它的任何子视图
UPDATE 从厦门国际银行我的自定义视图是搭配定制的视图控制器类,我在里面加入以下代码:
- (void)viewDidAppear:(BOOL)animated {
[super viewDidAppear:animated];
NSLog(@"!!! %i", [self.view.subviews count]);
}
如果我添加到MyView的它self.view打印1(有实际上是1子视图),但是当我将它添加为self.navigationController.view -viewDidAppear
甚至没有调用。但它确实出现在没有子视图的屏幕上。现在我更加困惑。
不,仍然没有子视图。 – NKorotkov
你确定,你添加完全需要的视图?可能它没有子视图?尝试检查myView.subviews.count – mityaika07
我敢肯定,因为当我将此行更改为'[self.view addSubview:myView];'子视图按预期显示。我真的很奇怪。 – NKorotkov