我用Phonegap/Cordova v1.9.0 开发了一个iphone 应用程序。
我想实现以下问题。
-当后台应用程序恢复活动时(点击应用程序图标时),显示的页面会自动重新加载-
可能我应该在 Appdelegate.m 或 MainViewController.m 中的函数 (void)applicationDidBecomeActive 中制作一些程序,但我不知道该怎么做。
请告诉我如何解决这种情况。
我用Phonegap/Cordova v1.9.0 开发了一个iphone 应用程序。
我想实现以下问题。
-当后台应用程序恢复活动时(点击应用程序图标时),显示的页面会自动重新加载-
可能我应该在 Appdelegate.m 或 MainViewController.m 中的函数 (void)applicationDidBecomeActive 中制作一些程序,但我不知道该怎么做。
请告诉我如何解决这种情况。
您可以使用NSNotification
观察者模式。在你的MainViewController.m
文件中viewDidLoad
,你可以添加一个观察者(注册通知):
- (void)viewDidLoad
{
[super viewDidLoad];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(appDidBecomeActive:)
name:UIApplicationDidBecomeActiveNotification
object:nil];
}
然后你必须实现appDidBecomeActive:
(你可以给选择器起任何名字,但你必须实现那个名字的方法)。在这个例子中:
- (void)appDidBecomeActive:(NSNotification *)notification {
NSLog(@"App became active");
}
当应用程序恢复时,如果此视图控制器处于活动状态,它将简单地将其记录到控制台。您可以将任何您希望的代码放入该方法中(在您的情况下,刷新页面)。
dealloc
当视图控制器在方法中被释放时,不要忘记移除观察者。这将为您删除所有观察者。
- (void)dealloc
{
[[NSNotificationCenter defaultCenter] removeObserver:self];
NSLog(@"Removed all notification observers");
}
您真的使用的是 1.9 版吗?
尝试这个:
document.addEventListener("resume", onResume, false);
function onResume() {
// Handle the resume event, reload the page or content
}