这是一个让我失望的问题,因为我无法解决它,尽管它看起来很容易。事实是我有一个iOS应用程序,主要是一个加载网站的webview,我需要在收到通知时加载不同的wen页面。我正在实施推送通知,并且我已经设法让它们正常工作。它们由 App Delegate 中的应用程序接收,然后是问题开始的时候。我想用特定的 URL 启动 webview,但我不知道该怎么做。我试图获取 webview 实例并将 URL 传递给它:
“SomeAppDelegate.h”
#import <UIKit/UIKit.h>
@class BrowserViewController;
@interface SomeAppDelegate : UIResponder <UIApplicationDelegate>
@property(nonatomic, retain) IBOutlet BrowserViewController *viewController;
@property (strong, nonatomic) UIWindow *window;
@end
“SomeAppDelegate.m”
#import "SomeAppDelegate.h"
#import "BrowserViewController.h"
@implementation SomeAppDelegate
@synthesize window = _window;
@synthesize viewController;
.........
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
{
[viewController.webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.google.com"] cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:20]];
[self.window addSubview:viewController.webView];
[self.window makeKeyAndVisible];
另一个测试是在 BrowserViewContrller 中创建一个实例方法,尝试从那里重新加载。我还尝试以编程方式加载情节提要,但是当情节提要中未选中“是初始视图控制器”时,应用程序在启动前崩溃。
我做了很多谷歌搜索,但我不太了解这个生命周期是如何运作的。我会感谢任何帮助。