2010-11-14 55 views
2
不尊重框架中“的loadView”

我有下面的代码片段:的UIView中的UINavigationController

- (void)loadView { 
    self.view = [[UILabel alloc] initWithFrame:CGRectMake(20.0, 20.0, 40.0, 40.0)]; 
    self.view.backgroundColor = [UIColor blackColor]; 
} 

如果我运行使用主视图控制器的“基于视图的应用程序”中创建一个项目中的片段一切按预期工作。但是,如果我在使用“基于导航的应用程序”创建的项目中运行它,标签将填充屏幕(不考虑尺寸)。如何解决在导航控制器中呈现时的行为?谢谢!

回答

1

导航视图控制器将调整视图控制器的视图到显示区域的大小,因此您描述的行为是正常的并且是按设计的。通常,我们在层次结构顶部使用空的UIView,并将子视图放在里面,这就是UILabel。

+0

谢谢Tia!我一直在使用它作为解决方法,但很高兴知道它是必需的! – 2010-11-14 08:28:05

相关问题