UIViewController 拒绝正确定位



我的一个视图控制器有问题。每当我尝试加载它时,它都会显示,但它的边界设置错误。它的起源似乎显示在状态栏后面,我似乎无法让它位于栏下方。

以下是我在应用程序窗口中加载 uiview 的方式:

- (void)loadListOfDevicesViewController:(NSString*)greeting {   
    for (int i = 0; i < [[window subviews] count]; i++) {
        UIView * subView = [[window subviews] objectAtIndex:i];
        [subView removeFromSuperview];
    }
    forceThumbnailRefresh = YES;
    listOfDevicesViewController = [[ListOfDevicesViewController alloc] initWithNibName:@"ListOfDevicesViewController" bundle:nil];
    listOfDevicesViewController.delegate = self;
    listOfDevicesViewController.bIsForceRefresh = NO;
    listOfDevicesViewController.greetingMessage = greeting;
    [listOfDevicesViewController.view setFrame:CGRectMake(0, 20, 320.0f, 460.0f)]; //does not seem to work
    [window addSubview:listOfDevicesViewController.view];
}

无论如何,它似乎都不会采用我在框架中指定的值。

有人可以帮忙吗,我所有其他视图控制器都运行良好。

问候

尝试在视图控制器中使用它:

viewController.edgesForExtendedLayout = UIRectEdgeNone;

我在这里写了一个关于这个的指南:

https://stackoverflow.com/a/19585104/550034

我发现了问题所在。似乎在该特定视图的 XIB 文件中,没有模拟指标状态栏键。

我添加了它,现在它工作正常,这很奇怪,因为我认为这仅适用于模拟器而不是实际设备

最新更新