从 appdelegate swift 访问 UIwebview

Posted

技术标签:

【中文标题】从 appdelegate swift 访问 UIwebview【英文标题】:accessing UIwebview from appdelegate swift 【发布时间】:2015-10-27 19:45:32 【问题描述】:

我有一个继承 UIWebViewDelegate 的 UIVivewController。当我收到推送通知并在 Appdelegate 上处理该通知时。如何访问 webview 对象以更改页面的位置。

 class WebViewController: UIViewController,UIWebViewDelegate 

    @IBOutlet weak var webView: UIWebView!

    override func viewDidLoad() 
        super.viewDidLoad()

     let url = NSURL(string: "WEBURL")
        let request = NSURLRequest(URL: url!)
        webView.loadRequest(request)

        webView.delegate = self
    

应用委托

func application(application: UIApplication, didReceiveRemoteNotification userInfo: [NSObject : AnyObject]) 
webview.Load(userinfo["link"]) //I need to accesss the webview object

【问题讨论】:

【参考方案1】:

您可以尝试使用:

let vc = self.window.rootViewController as UIViewController

另一个想法是您将已经实例化的视图控制器检索为函数变量,设置/获取您的属性并将设置为呈现视图控制器。

查看此堆栈溢出帖子:Opening view controller from app delegate using swift

【讨论】:

以上是关于从 appdelegate swift 访问 UIwebview的主要内容,如果未能解决你的问题,请参考以下文章

Swift - 从viewController访问AppDelegate窗口

Swift:如何通过快速操作从 AppDelegate 访问某个 TabBar 选项卡?

如何从 AppDelegate 访问符合 App 协议的 Swift 结构 [重复]

如何从 AppDelegate 访问 ViewController 变量

如何从 UI 测试访问 App Delegate?

从 ViewController 访问 AppDelegate 中的对象