rih*_*iha 5 uitoolbar uinavigationcontroller xamarin.ios modalviewcontroller
我试图在一个模态呈现的UINavigationController的底部放一个简单的UIToolbar.在此示例中,它应包含两个按钮"取消"和"某事".
...
UINavigationController modalNavigationController = new UINavigationController(someViewController);
modalNavigationController.NavigationBar.BarStyle = UIBarStyle.Black;
modalNavigationController.Toolbar.BarStyle = UIBarStyle.Black;
modalNavigationController.ToolbarHidden = false;
UIBarButtonItem cancelButton = new UIBarButtonItem("cancel", UIBarButtonItemStyle.Plain, delegate {
modalNavigationController.DismissModalViewControllerAnimated(true);
});
UIBarButtonItem flexSpace = new UIBarButtonItem(UIBarButtonSystemItem.FlexibleSpace, null);
UIBarButtonItem someButton = new UIBarButtonItem("something", UIBarButtonItemStyle.Plain, delegate {
Console.WriteLine("here we are!");
});
modalNavigationController.ToolbarItems = new UIBarButtonItem[] { cancelButton, flexSpace, someButton };
parentController.PresentModalViewController(modalNavigationController, true);
...
Run Code Online (Sandbox Code Playgroud)
工具栏显示并具有黑色样式(已分配),但它不包含任何项目.我已经尝试在将hidden设置为false之前分配项目,没有效果.我也试过使用Toolbar.Items和Toolbar.Hidden以及SetToolbarItems()和SetToolbarHidden()代替,没有运气.
关于这里可能出错的任何提示?谢谢
编辑:
网上的大多数样本创建自己的UIToolbar并将其添加为子视图.UINavigationController不需要这样,对吧?AFAICT,它有一个内置的.
没关系,我不知道错过了必须在每个子视图的基础上提供工具栏项目.
这有效:
someViewController.ToolbarItems = new UIBarButtonItem[] { cancelButton, flexSpace, someButton };
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3072 次 |
| 最近记录: |