检查是否使用QuickAction打开了ViewController

时间:2016-08-01 11:49:32

标签: ios swift 3dtouch

如何检查我的Swift应用程序是否使用QuickAction打开?我搜索一个可以在viewDidLoad中的解决方案。

e.g。

override func viewDidLoad() {
      if *VC was opened with a QuickAction* == true {
          // do this
       else {
          // do sth else
       }
}

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

当通过3D触摸打开应用程序时,在AppDelegate中调用以下方法

func application(application: UIApplication, performActionForShortcutItem shortcutItem: UIApplicationShortcutItem, completionHandler: (Bool) -> Void) {

//Navigate to required viewController from here
//YourViewController.isOpenedThrough3DTouch = true
}

您可以为所有ViewControllers创建一个基类,并声明一个bool变量isOpenedThrough3DTouch

在启动了AppDelegate所需导航的ViewController回调中将此变量设置为true,以便viewDidLoad知道