2013-10-08 109 views
0

我应用程序中的单个视图拒绝填充iOS7中的导航栏。我可以看到酒吧在那里,启用,可见和透明,因为当我将它们拖动时,我的可滚动控件浮动在它下面。问题很简单,当我将控件添加到self.navigationItem.leftBarButtonItem/self.navigationItem.rightBarButtonItem,并用self.title = @"Title";表示视图的标题(在ViewController中)时,它们不会显示在导航区域中。导航条未填充 - iOS7

奇怪的是,如果我设置self.navigationController.navigationBar.topItem.title = @"Title",这会在导航栏中的视图上呈现标题(但不是解决方案,因为在导航应用程序中的其他位置时导致问题)。表达“(self.navigationController.navigationBar.topItem != self.navigationItem)”评估是真实的,我不明白这是怎么回事。

在应用程序中还有其他视图使用上面显示的语句正确地呈现导航控件。

我应该提到这个应用程序按照iOS6.1的预期执行。我对iPhone开发非常新,所以很容易错过。任何建议,我可以检查将不胜感激。

+0

你推视图控制器到导航控制器堆栈? –

+0

可能不正确,那里的代码已经阅读:self.navigationController.viewControllers = [NSArray arrayWithObject:self.myViewController]; ---用[self.navigationController pushViewController:self.vehicleListViewController animated:YES]更新这个;似乎做得更好。 –

+0

它是否解决了问题,如果你实际上推视图控制器,而不是使用'setViewControllers:animated:'或属性setter?如果是这样,我会认为这是一个应该向苹果报告的错误。 –

回答

0

已解决。我正在使用将视图控制器推入导航控制器的不正确方法。

而不是

self.navigationController.viewControllers = [NSArray arrayWithObject:self.myViewController]; 

使用以下

[self.navigationController pushViewController:self.vehicleListViewController animated:YES];