title: Present UIAlertController in the currently active UIViewController
body: <p>I've got a timer showing an alert when finished.
  This alert view should be presented in the view controller which the user is currently in.</p>
  
  <p>My feeling is this could be accomplished much more effective than the following:</p>
  
  <p>The way I'm doing this now is give an observer for a notification to each of my 5 view controllers as well as a method to create and present that alert.</p>
  
  <p>Is there a way to only set up the alert once and then present it in the view controller that is currently active?</p>
  
  <p>Here's my code:</p>
  
  <pre><code>// I've got the following in each of my view controllers.
  
  // In viewDidLoad()
  override func viewDidLoad() {
    super.viewDidLoad()
    NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(SonglistViewController.presentSleepTimerFinishedAlert(_:)), name: "presentSleepTimerFinishedAlert", object: nil)
  }
  
  
  func presentTimerFinishedAlert(notification: NSNotification) {
    let alertController = UIAlertController(title: "Timer finished", message: nil, preferredStyle: UIAlertControllerStyle.Alert)
    alertController.addAction(UIAlertAction(title: "OK", style: UIAlertActionStyle.Default, handler: nil))
    presentViewController(alertController, animated: true, completion: nil)
  }
  </code></pre>
  
  <p>Thanks a lot for any ideas!</p>