我创建了uitabbarcontroller但工作不正常,我的问题是,如果我点击第二个标签栏,相应的视图不可见,只有第一个视图对所有actions都可见。我无法导航并查看下一个视图。< / p>
我的代码是:
if (this.tabBarController == null)
{
this.tabBarController = new UITabBarController ();
}
var viewController1=new Filterview();
var viewController2=new SearchView();
tabBarController = new UITabBarController ();
tabBarController.ViewControllers = new UIViewController []
{
viewController1,
viewController2,
} ;
viewController2.TabBarItem = new UITabBarItem (UITabBarSystemItem.Search, 1);
viewController1.TabBarItem = new UITabBarItem ("Filter", UIImage.FromFile ("Images/1382614124_filter.png"), 0);
this.NavigationController.PushViewController (this.tabBarController, true);
此代码无效,任何人都建议我如何在iOS xamarin单声道触摸应用程序中创建uitabbar。
答案 0 :(得分:3)
UITabBarController
是根控制器。这意味着它被认为是层次结构中最顶层的控制器。您正在UINavigationController
推送此控制器。
这很可能导致您看到的问题。
尝试在应用代理中设置标签栏控制器:
window.RootViewController = someTabBarController;
让我引用Apple的documentation:
部署标签栏界面时,必须将此视图安装为 窗口的根。与其他视图控制器不同,是一个标签栏 接口永远不应该作为另一个视图的子项安装 控制器。