title: extension UIAlertController convenience init warning
body: <p>When I define a <code>UIAlertController</code> convenience initializer:</p>
  
  <pre><code>extension UIAlertController {
      convenience init(message: String?) {
          self.init(title: nil, message: message, preferredStyle: .Alert)
          self.addAction(UIAlertAction(title: "OK", style: .Cancel, handler: nil))
      }
  }
  </code></pre>
  
  <p>and use it in a button action in my subclass of <code>UIViewController</code>:</p>
  
  <pre><code>func buttonAction(button: UIButton) {
      let alert = UIAlertController(dictionary: nil, error: nil, handler: nil)
      presentViewController(alert, animated: true, completion: nil)
  }
  </code></pre>
  
  <p>and click that button on the Simulator, I get a warning:</p>
  
  <blockquote>
    <p>Attempting to load the view of a view controller while it is deallocating is not allowed and may result in undefined behavior (UIAlertController)</p>
  </blockquote>
  
  <p>However, I don't get a warning if instead of a convenience initializer, I use a global function:</p>
  
  <pre><code>func UIAlertControllerWithDictionary(message: String?) -&gt; UIAlertController {
      let alert = UIAlertController(title: nil, message: message, preferredStyle: .Alert)
      alert.addAction(UIAlertAction(title: "OK", style: .Cancel, handler: nil))
      return alert
  }
  </code></pre>
  
  <p>I've reported this to Apple as an iOS SDK bug.</p>
  
  <p>Until it's fixed, is it OK to ignore the warning and use the convenience initializer?</p>