方向当一个视图控制器视图作为子视图添加时,方法无响应

时间:2011-10-07 06:36:31

标签: iphone objective-c addsubview orientation-changes

我正在开发一个应用程序,在我的按钮单击中,我必须将一个类控制器视图显示为子视图。 我已将视图Controller添加为子视图,并且工作正常。

TempViewControlleriPad *tempScreen=[[TempViewControlleriPad alloc]initWithNibName:@"TempViewControlleriPad" bundle:nil];
[self.view addSubview:tempScreen.view];
[tempScreen viewWillAppear:NO];

现在当我旋转设备方向时,我的子视图没有响应该方向意味着我的子视图没有旋转。

TempViewControlleriPad orientation method:-


- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
    if(interfaceOrientation == UIInterfaceOrientationPortrait || interfaceOrientation == UIInterfaceOrientationPortraitUpsideDown){
             [[NSBundle mainBundle] loadNibNamed:@"TempViewControlleriPad" owner:self options:nil];
    }
    else if(interfaceOrientation == UIInterfaceOrientationLandscapeRight || interfaceOrientation == UIInterfaceOrientationLandscapeLeft){
         [[NSBundle mainBundle] loadNibNamed:@"TempViewControlleriPadLandscape" owner:self options:nil];
    }

    return YES;

}

请建议我如何解决这个方向问题。

提前致谢。

1 个答案:

答案 0 :(得分:1)

子视图的控制器是UIViewController吗? 你不应该在另一个中嵌入一个视图控制器。来自Apple文档:

  

您不应使用多个自定义视图控制器进行管理   同一视图层次结构的不同部分。同样,你应该   不使用单个自定义视图控制器对象来管理多个   屏幕值得内容。   http://developer.apple.com/library/ios/#featuredarticles/ViewControllerPGforiPhoneOS/AboutViewControllers/AboutViewControllers.html#//apple_ref/doc/uid/TP40007457-CH112-SW12

您可以在子视图上设置自动调整大小。