我有一个继承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
}
appdelegate
func application(application: UIApplication, didReceiveRemoteNotification userInfo: [NSObject : AnyObject]) {
webview.Load(userinfo["link"]) //I need to accesss the webview object
}
答案 0 :(得分:0)
您可以尝试使用:
let vc = self.window.rootViewController as {UIViewController}
另一个想法是,您将已经实例化的视图控制器检索为函数变量,设置/获取属性并将set设置为呈现视图控制器。
请参阅此堆栈溢出帖子:Opening view controller from app delegate using swift