我需要根据UISegmentedControl中选择的内容显示两个不同的视图。我真的不知道从哪里开始。视图(控制器)应显示在UISegmentedControl下。
所以假设我有一个包含分段控件的MainView(Controller) 和两个视图Child1View(Controller)和Child2View(Controller)
我假设我需要在MainView(Controller)中使用两个MvxViewControllers(每个子节点一个),但是当我通过分段控件选择它时,我不确定如何实例化并显示它们。
我的MainViewModel具有显示子视图模型的命令(因为我使用选项卡有一个相当的Android实现),但是如何让它们在包含分段控件的MainView(Controller)中显示。在创建我的xib文件时,我无法在XCode中的UIViewController中放置UIVIewController。
请帮忙。
答案 0 :(得分:0)
经过几个小时的尝试,这就是我做的事情
在我的MainView(Controller)中为每个视图控制器我需要实例化我调用CreateViewControllerFor来创建我的视图控制器
var child1ViewModelRequest = new MvxViewModelRequest(typeof(Child1ViewModel), null, null. null);
child1View = (Child1View) this.CreateViewControllerFor<Child1ViewModel>(child1ViewModelRequest );
为了显示子视图控制器,我添加了一个容器视图,该视图构成了要显示的视图控制器的区域,然后显示以下代码
currentViewController = (UIViewController)child1View;
this.AddChildViewController(currentViewController);
currentViewController.View.Frame = containerView.Bounds;
containerView.Add(currentViewController.View);
注意currentViewController和child1View是MainView(Controller)的成员变量