使用导航控制器的优点
advantages of using navigation controller
我最近开始使用 iOS 和 Swift。我注意到可以使用 UI 元素并通过 Interface Builder 添加按钮来实现导航栏。我还注意到导航栏可以使用导航控制器实现,并在代码中自定义导航栏。
使用一种方法相对于另一种方法的优势和情况是什么,最佳实践等?从性能的角度来看有什么显着差异吗?
我们无法真正看到 UINavigationController 的代码,因此如果不对 UINavigationController 进行编码并执行一些非常精确的测试,就很难比较 UINavigationController 与完全自定义导航控制器的性能。我想如果有任何可检测到的差异,性能差异将是最小的。如果您只需要在几个特定视图之间来回导航,自定义导航控制器就可以正常工作。
交付的 UINavigationController 背后确实有一些想法:
- 让您的应用保持用户期望 iOS 应用的外观
- 为您处理导航标题和链接,以便您可以专注于应用程序的其余部分
- 为用户提供后退、前进手势控制
- 管理导航堆栈,使您可以轻松地在堆栈中可能更靠下的视图控制器之间跳转(从中的几个视图控制器跳回到主页)
- 有一个委托 属性 这样您就可以有一个 object 随时了解用户在应用程序中的位置
如果您不想,您不必使用提供的导航控制器,但它提供了很多功能,以后可能会派上用场!
我最近开始使用 iOS 和 Swift。我注意到可以使用 UI 元素并通过 Interface Builder 添加按钮来实现导航栏。我还注意到导航栏可以使用导航控制器实现,并在代码中自定义导航栏。
使用一种方法相对于另一种方法的优势和情况是什么,最佳实践等?从性能的角度来看有什么显着差异吗?
我们无法真正看到 UINavigationController 的代码,因此如果不对 UINavigationController 进行编码并执行一些非常精确的测试,就很难比较 UINavigationController 与完全自定义导航控制器的性能。我想如果有任何可检测到的差异,性能差异将是最小的。如果您只需要在几个特定视图之间来回导航,自定义导航控制器就可以正常工作。
交付的 UINavigationController 背后确实有一些想法:
- 让您的应用保持用户期望 iOS 应用的外观
- 为您处理导航标题和链接,以便您可以专注于应用程序的其余部分
- 为用户提供后退、前进手势控制
- 管理导航堆栈,使您可以轻松地在堆栈中可能更靠下的视图控制器之间跳转(从中的几个视图控制器跳回到主页)
- 有一个委托 属性 这样您就可以有一个 object 随时了解用户在应用程序中的位置
如果您不想,您不必使用提供的导航控制器,但它提供了很多功能,以后可能会派上用场!