检查是否使用 QuickAction 打开了 ViewController

Check if ViewController was opened with a QuickAction

如何检查我的 Swift 应用程序是否使用 QuickAction 打开?我正在寻找可以在 viewDidLoad 内部的解决方案。

例如

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

感谢您的帮助!

通过3D touch打开应用程序时调用AppDelegate中的以下方法

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

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

您可以为所有 ViewController 创建一个基础 class 并声明一个 bool 变量 isOpenedThrough3DTouch

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