使用导航控制器的优势

sBo*_*rne 1 uinavigationbar uinavigationcontroller ios

我最近开始使用iOS和Swift。我注意到,可以使用UI元素并通过Interface Builder添加按钮来实现导航栏。我还注意到,可以使用导航控制器来实现导航栏,并在代码中自定义导航栏。

使用一种方法相对于另一种方法,最佳实践等的优点和情况是什么?从性能的角度来看有什么明显的不同吗?

小智 5

我们真的看不到UINavigationController的代码,因此很难比较UINavigationController和完全自定义的导航控制器的性能,而无需对其进行编码和执行一些非常精确的测试。我可以想象,如果根本没有可检测到的差异,那么性能差异将是最小的。如果您只需要在几个特定的​​视图之间来回导航,则自定义导航控制器将可以正常工作。

交付的UINavigationController背后确实有一些想法:

  • 使您的应用保持用户对iOS应用外观的期望
  • 为您处理导航标题和链接,以便您可以专注于应用程序的其余部分
  • 为用户提供后退,前进手势控制
  • 管理导航堆栈,使您可以轻松地在可能位于堆栈下方的视图控制器之间跳转(从其中的一些视图控制器跳回到首页)
  • 具有委托属性,以便您可以拥有一个始终了解用户在应用程序中的位置的对象

如果您不想使用,则不必使用提供的导航控制器,但是它提供了很多功能,以后可能会派上用场!