2

this postの質問の続きで、多くのxamarin.ios開発者の質問になる完全な質問を投稿したいと思います。StoryBoardを使用しないxamarin.iosのUITabBarController

私のリクエストは、すべてのUIViewControllerでTabBarを使用しています。だから、私が知っているように、それを実現するには2つの方法があります。

まず:

appDelegate - >設定RootViewController:TabController - この場合は> UVC1

、私はNULL NavigationControllerを持っていると私はnavigationItemを持っていないでしょう。 and

this.NavigationController.PushViewController(new SearchViewController()、true);

NavigationControllerがnullであるというエラーが発生します。ここで

はAppDelegateで私のコードです:

_tabController =新しいTabController(); _window.RootViewController = _tabController;

と私のTabController:

パブリッククラスTabController:UITabBarController {

UIViewController tab1, tab2, tab3, tab4; 

    public TabController() 
    { 
     tab1 = new HomeViewController(); 
     tab1.TabBarItem.Image = UIImage.FromFile("Icons/Home.png"); 

     tab2 = new TagCategoryViewController(null, null, 1, null); 
     tab2.TabBarItem.Image = UIImage.FromFile("Icons/Tag.png"); 

     tab3 = new SearchViewController(); 
     tab3.TabBarItem.Image = UIImage.FromFile("Icons/Search.png"); 

     tab4 = new ProfileViewController(); 
     tab4.TabBarItem.Image = UIImage.FromFile("Icons/Home.png"); 

     var tabs = new UIViewController[] { 
      tab1, tab2, tab3,tab4 
     }; 

     ViewControllers = tabs; 
    } 
} 

そして、第二の方法:

RootViewController - > navigationController - > TabController - > UVC1 - > new UVC2 - >タブバーなし!

ここではすべてがうまくいくようですが、Tabsには存在しない新しいUIViewControllerに移動すると、TabBarが表示されます。

そして、コードは次のとおりです。

_tabController = new TabController(); 
var navigationController = new UINavigationController(viewController); 
_window.RootViewController = new UINavigationController(_tabController); 

私は何ができますか?何か案が?

私はStoryBoardを使用しません!

答えて

3

UINavigationControllerですべてのあなたのUIViewControllerをラップすることにより、あなたが望む行動を有効にしても、NavigationBarはあなたのビューからNavigationBarをオーバーラップされますので、あなたがTabBarControllerを削除することを確認することができます。

_window.RootViewController = _tabController; 

そして、あなたの意見:

tab1 = new UINavigationController(new HomeViewController()); 
tab1.TabBarItem.Image = UIImage.FromFile("Icons/Home.png"); 
+0

男ねえ、あなたは私の命を救う、そんなにありがとう;) 私はのUIViewControllerにタブバーを非表示にすることができますどのように最後の質問は、? – Alireza

+0

https://stackoverflow.com/questions/47182764/uitabbarcontroller-in-some-uiviewcontrollers – Alireza

関連する問題