在 iOS 7 中更新导航栏而不更改视图
Posted
技术标签:
【中文标题】在 iOS 7 中更新导航栏而不更改视图【英文标题】:Update Navigation Bar Without Changing View in iOS 7 【发布时间】:2014-03-07 21:44:05 【问题描述】:我有一个带有导航视图控制器的常规主从应用程序,但是,在最低级别的视图控制器上,当用户选择它时,我想在同一视图中显示内容,但仍然更新导航栏,就像推送了一个新的 View Controller。
例如在日历应用程序中,当用户按下返回时,它会缩小到月/年视图,但看起来并没有改变视图控制器。
实现这一点的最佳方法是什么。当用户选择内容时,新内容会放大到全视图,因此用户不会对返回按钮的功能产生混淆。
我研究过使用 pushNavigationItem,但这在导航视图控制器中不起作用...
谢谢!
【问题讨论】:
【参考方案1】:为了记录,这就是我所做的......
注意:这不适用于常见情况,这种技术可能会诱使您偏离 Apple 的人机界面指南。
• 在 UINavigationViewController 之上添加了一个 UIView
[[UIApplication sharedApplication].delegate.window addSubview:customView];
• 在新视图中,我放置了一个 UINavigationBar,它被配置为看起来与 UINavigationViewController 的导航栏相同(包括后退按钮!)
[navBar pushNavigationItem:item1 animated:NO]; // This item becomes the back button
[navBar pushNavigationItem:item2 animated:NO];
• 然后您可以无缝地为新导航栏设置动画
【讨论】:
以上是关于在 iOS 7 中更新导航栏而不更改视图的主要内容,如果未能解决你的问题,请参考以下文章