我想重新加载我在应用程序打开时加载的简单UIWebView,并从iPad主页按钮关闭。
我搜索了其他问题,但似乎没有一个问题,因为我不想在我的应用中添加额外的按钮或标签或其他内容。
我试过了:
- (void)viewDidAppear:(BOOL)animated {
[super viewDidAppear:animated];
[webView reload];
}
但这没有反应。我的初始化代码位于从UIViewController派生的控制器中,UIwebview初始化在 - (void)viewDidLoad
有任何线索如何做到这一点?
亲切的问候
答案 0 :(得分:6)
正如人们已经指出你可能想要applicationWillEnterForeground:
电话,但不要试图向你的app代表添加一堆垃圾。
相反 - 您应该在初始化包含UIViewController
的{{1}}时注册接收此通知。
UIWebView
然后实现类似的刷新方法:
- (id)init
{
self = [super init];
if (self) {
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(reloadWebView:)
name:UIApplicationWillEnterForegroundNotification
object:nil];
// Do some more stuff
}
return self;
}
你需要在dealloc中取消注册以避免任何令人讨厌的事情,比如这个
- (void)reloadWebView:(NSNotification *)notification
{
[webView reload];
}
答案 1 :(得分:0)
尝试在applicationWillEnterForeground:
中刷新您的观点。当应用程序在使用主页按钮放入后台后恢复时,此消息将发送给您的应用程序代理。
答案 2 :(得分:0)
您是否想要在多任务处理后用户恢复应用时刷新Web视图?在这种情况下,您所追求的是UIApplicationDelegate
中的applicationWillEnterForeground:方法。
多任务处理的一般信息是here。