この問題を確認しており、コードで UINavigationController を手動で作成することで解決しています。XIB の属性インスペクターからナビゲーション バーを追加すると、誰か教えてください -> トップ バーを黒のナビゲーション バーに設定すると、XIB に表示されますが、プログラムを実行すると表示されません。self.NavigationController が nil になっていることに気付いたので、XIB に UINavigationController を追加して NIB を割り当てましたが、それでも nil です! これの何が問題なのですか?追加の設定が必要ですか?
[編集1]
以下のように追加してみましたが、動作しますが、親クラスが回転イベントと外観イベントを子コントローラーに自動的に転送するようにします。次のことを行うと、nvc を子として追加し、marketsListViewController として追加していないため、それらは送信されません。そのため、UINavigationController をサブクラス化する必要があると考えました。EDIT2 を参照してください。
self.marketsListViewController = [[MarketsListViewController alloc] initWithNibName:@"MarketsListViewController" bundle:nil];
UINavigationController *nvc = [[UINavigationController alloc] initWithRootViewController:self.marketsListViewController];
nvc.navigationBar.barStyle = UIBarStyleBlack;
[self.marketsListView addSubview:nvc.view];
[self addChildViewController:nvc];
[nvc didMoveToParentViewController:self];
[編集2]
marketListViewController を UINavigationController にサブクラス化し、次のように動作すると考えましたが、動作しません。ナビゲーションバーを表示するだけで、UITableView は表示されません!
self.marketsListViewController = [[MarketsListViewController alloc] initWithNibName:@"MarketsListViewController" bundle:nil];
self.marketsListViewController.navigationBar.barStyle = UIBarStyleBlack;
[self.marketsListView addSubview:self.marketsListViewController.view];
[self addChildViewController:self.marketsListViewController];
[self.marketsListViewController didMoveToParentViewController:self];
[編集3]
Edit1 で間違っていたのは、子をナビゲーション コントローラーのルート コントローラーとして追加すると、子コントローラーが回転イベントを取得しないことです。親はまだすべてのイベントを自動的に送信しており、それが私が望んでいることです! :)