Swift
iOS8

AppDelegateでAlertDialogを出したい場合(rootViewControllerの取得)

More than 3 years have passed since last update.


rootViewControllerの取得

AppDelegateでAlertDialogを出すのには、rootViewControllerを取得しないとそもそも表示できないので


AppDelegate

import UIKit

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {

var window: UIWindow?


とやっといて


AppDelegate

self.window?.rootViewController?


で取得する。


debugとかでalertdialogを出したい場合

debugモードを使う方法は、Swift での #ifdef DEBUG のやり方を参考にしてください。


AppDelegate

#if DEBUG

var body:NSString = "えらーめっせーじ" + "\(error)"
var alertController:UIAlertController = UIAlertController(title: "通知", message: body, preferredStyle: UIAlertControllerStyle.Alert)
alertController.addAction(UIAlertAction(title: "OK", style: UIAlertActionStyle.Default, handler: nil))
self.window?.rootViewController?.presentViewController(alertController, animated: true, completion: nil)
#endif