title: Changes to navigationItem displayed with delay
body: <p>I'm facing a delay when changing properties of a <code>navigationItem</code> inside a <code>ViewController</code> which is embedded in a <code>NavigationController</code>. </p>
  
  <p>Consider the example Master-Detail-App provided by XCode: It contains a <code>MasterViewController</code> with a segue to a <code>DetailViewController</code>. I'm now trying to customize the navigation bar inside the <code>viewDidLoad</code> method of the DetailViewController. </p>
  
  <pre class="lang-swift prettyprint-override"><code>class DetailViewController: UIViewController {
  
      override func viewDidLoad() {
          super.viewDidLoad()
  
          //delay if the button (or any other property) is set here
          navigationItem.rightBarButtonItem = editButtonItem
      }
  }
  </code></pre>
  
  <p>The changes to the navigation bar will be displayed but with a noticeable delay. However, if the changes to the navigation bar are made from within the <code>MasterViewController</code> everything works perfectly fine and smooth:</p>
  
  <pre class="lang-swift prettyprint-override"><code>class MasterViewController: UIViewController {
  
      ...
  
      override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
          if segue.identifier == "showDetail" {
                  let controller = (segue.destination as! UINavigationController).topViewController as! DetailViewController
  
                  //no delay if the button would instead be set here
                  //navigationItem.rightBarButtonItem = editButtonItem
         }
      }
  }
  </code></pre>
  
  <p>To me it seems not to be a <b>good practice</b> to modify items of the <code>navigationBar</code> from within the <code>MasterViewController</code>. Especially because 
  items like the <code>title</code> and <code>buttons</code> heavily depend on the <code>DetailViewController</code>. </p>
  
  <p>What is now the <b>most preferable way</b> to change the <code>navigationItem</code> without delay and with separation of concern in mind?</p>