添加UIViewControllers视图作为另一个UIViewController视图的子视图

时间:2013-04-08 09:47:23

标签: ios ios5 ios6 uiviewcontroller addsubview

我有一个名为TestView的UiView,我已添加为我的NumberViewController的子视图。

在我的应用程序启动时,我的rootViewController是PaperViewController,它有一些我通过xib添加的UIButton,现在我想将NumberViewController的视图添加为PaperViewController的子视图,所以我这样做了

 NumberViewController = [[NumberViewController alloc] initWithNibName:@"NumberViewController" bundle:nil];
    NumberViewController.delegate = self;
    [self.view addSubview:NumberViewController.view];
    NumberViewController.view.backgroundColor = [UIColor clearColor];
    NumberViewController.view.hidden = YES;

现在这是隐藏的,因为我会点击某个按钮取消隐藏它然后我将显示NumberViewContrller的视图。这一切都正常。

但是假设我通过代码在PaperViewController中添加了一些按钮,然后取消隐藏NumberViewController的视图,然后两个视图重叠。

我不明白是什么问题,我犯的是什么错误。所以朋友们请帮帮我

此致 兰吉特。

1 个答案:

答案 0 :(得分:2)

在标题中添加UIView:

@property (weak, nonatomic) IBOutlet UIView *addChildView;

- (void)viewDidLoad中 - 方法执行此操作:

  ChildViewController *nonSystemsController = [[ChildViewController alloc] initWithNibName:@"ChildViewController" bundle:nil];

    nonSystemsController.view.frame = self.addChildView.bounds;    
    [self.addChildView addSubview:nonSystemsController.view];

    [nonSystemsController didMoveToParentViewController:self];
[self addChildViewController:nonSystemsController];