【发布时间】:2016-08-25 21:44:29
【问题描述】:
【问题讨论】:
-
试试 self.navigationItem.hidesBackButton = true
-
我试过不行
-
介意分享一些代码吗?
标签: ios swift uinavigationcontroller uinavigationitem
【问题讨论】:
标签: ios swift uinavigationcontroller uinavigationitem
我有带有 2 个按钮的 UINavigationController
不,你没有。导航控制器导航栏中的按钮属于该导航控制器的当前子视图控制器。特别是它们属于它的navigationItem。
所以你有一个带有两个按钮的视图控制器。
您还有另一个视图控制器(详细视图控制器)没有这两个按钮。
所以...如果您希望这些按钮出现在详细视图控制器中,请将这些按钮也提供给详细视图控制器!
更好的架构是将“永久按钮”放在工具栏而不是导航栏。但是您仍然需要让这些是 both 视图控制器的 toolbarItem 按钮。
【讨论】:
这是 UINavigationController 的常见行为,因为它与它刚刚显示的视图控制器有关。
永远不要期望 UINavigationBar 有一个含义,例如web主菜单有。想象一下 NavigationBar,带有 BarButtonItems 的 NavigationItem 的行为总是与情况相关,即实际显示的视图。
导航这个词代表的是从这里导航到某个地方的能力,而不是作为应用程序 UI 的一些导航工具。
您应该将后退按钮留在原处的原因:用户应该知道,他正在查看详细信息。而这对于 Apple 产品的理念非常重要——直观。这就是为什么 Apple 设备从来没有硬件后退按钮的原因。这是应用程序中最常用的约定,所以如果你想访问主菜单,你首先需要从细节中恢复。
我不建议打破这些实际规则。
【讨论】: