簡體   English   中英

Xamarin iOS返回主按鈕未顯示在詳細信息視圖中

[英]Xamarin iOS Back To Master Button Is not shown on detail view

簡而言之,我有一個SplitViewController作為RootController。 在構造函數中,我添加了主控制器和明細控制器。 細節控制器包裝在導航控制器中。

        {
        _masterViewController = new MenuViewController();
        _inventories = new InventoriesViewController();

        _detailNavigationController = new UINavigationController(_inventories);

        ViewControllers = new UIViewController[] {
            _masterViewController,
            _detailNavigationController
        };

如何在詳細信息導航欄上顯示菜單(顯示主菜單)后退按鈕?

我們不使用故事板

在方法ViewDidLoad()中添加以下代碼

        UIButton backButton = new UIButton();
        backButton.Frame = new CGRect(0,0,20,20);
        backButton.SetTitle("Back", UIControlState.Normal);
        backButton.SetTitleColor(UIColor.Gray, UIControlState.Normal);
        backButton.SetImage(new UIImage("back"), UIControlState.Normal);
        //backButton.SetImage(new UIImage("001.jpg"), UIControlState.Normal);
        backButton.TouchUpInside += (sender, e) =>
        {

            NavigationController.PopViewController(true);
        };
        UIBarButtonItem backItem = new UIBarButtonItem(backButton);

        NavigationItem.LeftBarButtonItem = backItem;

一段時間后,我在UISplitViewController上找到了屬性

DisplayModeButtonItem

因此,在創建主控制器和明細控制器之后(詳細控制器被包裝到UINavigationController中),我將DisplayModeButtonItem添加到了明細控制器的NavigationBar LeftItem中。 它給了我想要的外觀和行為

{
        _masterViewController = new MenuViewController();

        _inventories = new InventoriesViewController();
        _inventoriesNavigation = new UINavigationController(_inventories);

        _inventories.NavigationItem.LeftBarButtonItem = DisplayModeButtonItem;

        ViewControllers = new UIViewController[] {
            _masterViewController,
            _inventoriesNavigation
        };
}

暫無
暫無

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

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