iOS导航控制器代码的正确位置?

时间:2016-05-21 22:14:14

标签: ios swift uinavigationcontroller

为了在导航器视图中自定义导航栏,我使用了self.navigationController!.navigationBar 访问它。我是从第一个视图控制器的.swift文件中做到的。它工作正常,但我想知道是否有一个更好的地方把我丢失的代码?有没有人使用单独的.swift文件作为导航视图?

1 个答案:

答案 0 :(得分:1)

这不是一种可怕的方式。它当然可以完成工作。

根据您要完成的操作,您可以通过几种方式访问​​导航栏。

  1. 如果您需要专门为您所在的视图自定义条形图,请按照您描述的方式进行操作。
  2. 一个注意事项:您正在强制解包navigationController。如果您决定这样做,您只需要确保视图控制器始终位于UINavigationController内。

    1. 在您想要自定义外观的情况下,无论您在哪个视图中,都可以继承UINavigationController并在其viewDidLoad方法中进行任何类型的自定义。然后,您将使用UINavigationController.init(rootViewController: someViewController)的子类而不是像UINavigationController那样创建导航控制器。 YourNavigationControllerClass.init(rootViewController: someViewController)
    2. 对于#2,您需要创建一个新类并将代码放在新的类viewDidLoad方法中。

      enter image description here enter image description here