ios - 如何在 Delegate 中引用其他 ViewController 而不仅仅是 root

标签 ios swift

我正在尝试创建 Siri 快捷方式,并且希望该快捷方式能够转到不同的 ViewController 而不仅仅是根目录。这是怎么做到的?以下是当前的 App Delegate 代码。

func application(_ application: UIApplication, continue userActivity: NSUserActivity, restorationHandler: @escaping ([Any]?) -> Void) -> Bool {

            print(userActivity.activityType)//com.myvisionapps.Meditate.begin
            if(userActivity.activityType == "com.myvisionapps.Meditate.begin") {
                if let controller = window?.rootViewController as? ViewController {

                }

            }

            return false


        }

最佳答案

你可以使用这个代码AppDelegate,它就可以了:

let mainStoryboardIpad : UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let initialViewControlleripad : yourViewController = mainStoryboardIpad.instantiateViewController(withIdentifier: "yourViewControllerIdentifire") as! yourViewController
self.window = UIWindow(frame: UIScreen.main.bounds)
self.window?.rootViewController = initialViewControlleripad
self.window?.makeKeyAndVisible()
// now you can use initialViewControlleripad to access to your references in your ViewController

关于ios - 如何在 Delegate 中引用其他 ViewController 而不仅仅是 root,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55387526/

相关文章:

ios - 将存档发送到 App Store Connect 时出错

ios - 如何访问 UITableView 中具有多个部分的字典数组

iphone - 为什么我会看到有关 NSAutoreleasePool 不可用的警告消息?

ios - html5 视频 - 在桌面上播放,iPhone 6s,不会在 5s 上播放?

swift - 接受调用后使用 openTok (CallKit)

ios - 单击按钮重置重新排序的 TableView 行

swift - 检查单个 Unicode 标量的字符集会产生奇怪的行为

ios - UITableView - 使用 Swift 注册类

ios - 从另一个 Controller 调用 awakeFromNib

ios - 如何将 AVAsset 音频从一台 iOS 设备无线传输到另一台?