簡體   English   中英

不使用StoryBoard的xamarin.ios中的UITabBarController

[英]UITabBarController in xamarin.ios without using StoryBoard

在繼續我的問題的這個帖子 ,我想發布,這將是一個問題,很多開發商xamarin.ios一個完整的問題。

我的要求是在所有UIViewControllers中都具有TabBar。 因此,據我所知,有兩種方法可以實現它。

首先:

appDelegate->設置RootViewController:TabController-> UVC1

在這種情況下,我有NULL NavigationController,並且沒有NavigationItem。 和在

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

NavigationController為null會產生錯誤。

這是我在AppDelegate中的代碼:

_tabController = new 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->新的UVC2->沒有選項卡!

在這里,一切聽起來不錯,但是當我導航到Tabs中不存在的新UIViewController時,TabBar將消失!

代碼是:

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

我能做什么 ? 任何想法?

我不使用StoryBoard!

通過包裝所有UIViewControllerUINavigationController ,你可以讓你想要的行為,但要確保您刪除TabBarController因為NavigationBar會重疊NavigationBar從您的視圖。

_window.RootViewController = _tabController;

和您的意見:

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM