简而言之,我有一个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添加到详细控制器的导航栏LeftItem中。它给了我想要的外观和行为
{
_masterViewController = new MenuViewController();
_inventories = new InventoriesViewController();
_inventoriesNavigation = new UINavigationController(_inventories);
_inventories.NavigationItem.LeftBarButtonItem = DisplayModeButtonItem;
ViewControllers = new UIViewController[] {
_masterViewController,
_inventoriesNavigation
};
}