title: Button title set only for the second tab
body: <p>In my project there is a Segue Show(e.g. Push). After clicking the mainButton, TabBarController is presented. When I choose the second tab, the method <code>setButtonsTitle</code> is called and when I swipe the TabBarController down, I can see "item 2" instead of the "Button" title (default title). But when I click the first tab afterwards and swipe the TabBarController down, it remains "Button". My first thought was that the method does not get called, but this is not true (checked in debugger). Also, <code>print(title)</code> shows "Item 1". </p>
  
  <pre><code>import UIKit
  
  class ViewController: UIViewController {
  
      @IBOutlet weak var mainButton: UIButton!
  
      override func viewDidLoad() {
          super.viewDidLoad()
      }  
  
      override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
          let destination = segue.destination as! TabBarController
          destination.selectionDelegate = self
      }
  
  }
  
  extension ViewController : ButtonThings {
      func setButtonsTitle(title: String){
          mainButton.titleLabel?.text = title
          print(title)
      }
  }
  </code></pre>
  
  <p>And the TabBarController:</p>
  
  <pre><code>import UIKit
  
  class TabBarController: UITabBarController {
  
      weak var selectionDelegate: ButtonThings?
  
      override func viewDidLoad() {
          super.viewDidLoad()
      }
  
      //MARK: UITabBarController
      override func tabBar(_ tabBar: UITabBar, didSelect item: UITabBarItem) {
          selectionDelegate?.setButtonsTitle(title: item.title ?? "no title")
      }
  
  }
  
  protocol ButtonThings : class {
      func setButtonsTitle(title: String)
  }
  </code></pre>