[objective-c]根 ViewController 视图时以编程方式加载框架

发布时间: 2016/10/4 6:28:33
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

Im 加载根查看控制器在景观模式下发射 (没有接口构建使用)。 在 viewDidLoad,我要加入到根视图控制器视图,像这样的子视图

- (void)viewDidLoad
{
    [super viewDidLoad];

        // self.view.

    UIView *toolBar=[[UIView alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, 50)]; 
    toolBar.backgroundColor=[UIColor darkGrayColor];

    [self.view addSubview:toolBar];
//code contiues...
}

但 self.view.frame.size.width 返回宽度的纵向模式而不是景观。

在此先感谢

编辑︰ image for reference

解决方法 1:

实现 -loadView 的方法︰

- (void)loadView
{
    self.view = [[UIView alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    self.view.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
}

通常还父视图控制器是负责制定其儿童的帧大小视图控制器意见。在根视图控制器,我相信它采用的 UIWindow 附加到它的大小 (所以如果将窗口大小设置在您的应用程序委托,你可以只使用 [[UIView alloc] init] ,然后将 autoresizing 掩码设置 -loadView 方法)。 你可能需要考虑到在上面的代码,具体取决于您自己的代码中的状态栏。

赞助商