5

私は、モーダルに提示されたUINavigationControllerの下部に単純なUIToolbarを配置しようとしています。このサンプルでは、​​「キャンセル」と「何か」の2つのボタンが含まれている必要があります。モーダルUINavigationController with 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); 

... 

は、ツールバーが表示され、(割り当てられた)黒のスタイルを持っている、それはしかしすべての項目が含まれていません。私はfalseを設定する前に項目を割り当てようとしましたが効果はありません。私はまた、Toolbar.ItemsとToolbar.Hiddenだけでなく、SetToolbarItems()とSetToolbarHidden()を代わりに使ってみました。

ここで何が間違っているかについてのヒントはありますか?おかげ

EDIT:
ネット上のほとんどのサンプルは、独自のUIToolbarを作成し、サブビューとして追加します。これはUINavigationControllerでは必須ではありません。 AFAICT、それは1つを内蔵しています。

答えて

6

私はどうにかして、ツールバーのアイテムをサブビューごとに提供する必要があります。

これは動作します:

someViewController.ToolbarItems = new UIBarButtonItem[] { cancelButton, flexSpace, someButton }; 
+2

+1の答えを自分で投稿するため:) –

関連する問題