1

我正在尝试创建具有有效 2 个视图的 iPad 视图。左侧视图将是菜单/登录区域,右侧视图将显示内容,具体取决于左侧选择的菜单项。

我添加了 2 个容器视图,并且创建左侧菜单没有问题。但是,我无法告诉右侧在视图控制器之间切换。如何将 UIViewController 分配给容器视图?选择菜单项时,我需要能够使用不同的视图控制器切换右侧。

这甚至可能吗?我不想使用拆分视图控制器,因为右侧是 UITable,我不想要 UITable。

如果我不在正确的轨道上,有人可以指出我正确的方向吗?

提前谢谢了。

4

1 回答 1

1

这是一个示例代码,它为两个单独的按钮更新容器视图内容。

内容是两个不同的UIViewControllers

注意:在向ContinerView添加一个视图之前,不要忘记清除容器视图以管理内存。

.h 文件

MyViewController1 * myViewController1;
MyViewController2 * myViewController2;

@property (nonatomic, strong) IBOutlet UIView *containerView;

.m 文件

// Button-1
- (IBAction)button1_TouchUpInside:(UIButton *)sender {

  for (UIView *view in [containerView subviews]) {

    [view removeFromSuperview];
  }

  [button1 setSelected:YES];

  myViewController1 = nil;

  myViewController1 = [[MyViewController1 alloc]
                           initWithNibName:@"MyViewController1"
                           bundle:[NSBundle mainBundle]];

  [self.containerView addSubView:myViewController1.view];
}

- (IBAction)button2_TouchUpInside:(UIButton *)sender {

  for (UIView *view in [containerView subviews]) {

    [view removeFromSuperview];
  }

  [button2 setSelected:YES];

  myViewController2 = nil;

  myViewController2 = [[MyViewController1 alloc]
                           initWithNibName:@"MyViewController1"
                           bundle:[NSBundle mainBundle]];

  [self.containerView addSubView:myViewController2.view];
}

希望这将有助于解决您的问题。

于 2013-02-05T07:24:53.940 回答