Iphone 自动从主视图重新加载UIwebview(基于视图的应用程序)

Iphone 自动从主视图重新加载UIwebview(基于视图的应用程序),iphone,ios,Iphone,Ios,我有一个基于视图的应用程序。现在在开始视图中,我有一些按钮、一张图片和一个小的web视图 web视图有自己的.h/.m文件,该文件调用JSON请求来填充它。这很有效 我的问题是,当关闭并重新打开应用程序时,webview没有更新。我怎样才能让它工作 welcomeMessage.m(连接到webview) 查看苹果关于iOS生命周期的文档。您将在其中找到所需的所有回调: 特别是–applicationWillEnterForeground:对您来说会很有趣。我使用的是ViewWillDispl

我有一个基于视图的应用程序。现在在开始视图中,我有一些按钮、一张图片和一个小的web视图

web视图有自己的.h/.m文件,该文件调用JSON请求来填充它。这很有效

我的问题是,当关闭并重新打开应用程序时,webview没有更新。我怎样才能让它工作

welcomeMessage.m(连接到webview)


查看苹果关于iOS生命周期的文档。您将在其中找到所需的所有回调:


特别是
–applicationWillEnterForeground:
对您来说会很有趣。

我使用的是ViewWillDisplay,现在我已经尝试了applicationWillEnterForeground,但仍然没有成功。我把它放在我的主viewcontroller中webview所在的位置,我从viewdidLoad中输入代码,这样它就应该正确加载了?您必须将它放在应用程序的委托中才能调用它。如果希望在单个控制器中收到通知,则必须订阅相应的通知,例如:[[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(yourCallback)name:UIApplicationWillEnterForegroundNotification对象:nil];好吧,我想我差不多拿到了。因此,我将welcomeMessage.m文件中的awakeFromNib代码放在我的应用程序willenter中。。但它在welcomeMessage上显示未知接收者,或者如果我将其更改为welcomeMessage,则会显示loadHTMLstring未找到。在[welcomeMessage loadHTMLString:…]行上。在我的应用程序中,是否有方法只调用WelcomeMessage.m类中的awakefromNib方法?WelcomeMessage成员/属性属于视图,而不属于应用程序委托,这就是它未知的原因。你没有视图控制器,是吗?如果不是:在视图中创建一个方法,比如“-loadMessage:”。在这种情况下,将您的代码从awakeFromNib中放入。在你的应用程序代理中,你应该在某处引用你的视图。发送该视图[yourView loadMessage]。您问我是否有viewcontroller。是的。好几个。my.h.m和myAppViewController.xib上的。该布局如下所示:视图控制器(链接到欢迎消息类);里面是:视图。里面有:UiWebview和一些按钮。现在,我可以在appDelegate中使用applicationWillEnterForeground时显示一条日志消息。但是当我把代码放进去的时候什么都没有。顺便说一句,谢谢你的帮助。我现在有点不知所措
- (void)awakeFromNib{ 

[NSThread sleepForTimeInterval:1];
NSUserDefaults *gMess =[NSUserDefaults standardUserDefaults];
NSString *myMess=[gMess stringForKey:@"welcomeMessage"];
NSLog(@"WEBVIEW CLASS %@",myMess);
if (myMess == NULL) {
    NSString *html = [NSString stringWithFormat:@"<body style ='background-color:#FFFF33' align='center'><p>Welcome</p><p>Check out our Daily Winners</p></body>"];
    [welcomeMessage loadHTMLString:html baseURL:[NSURL URLWithString:@"http://www.myapp.com/api/welcome/welcomemessage.php?iappid=37"]];
}
else{

    NSString *html = [NSString stringWithFormat:@"<body style ='background-color:#FFFF33' align='center'> %@ </body>", myMess];
    [welcomeMessage loadHTMLString:html baseURL:[NSURL URLWithString:@"http://www.myapp.com/api/welcome/welcomemessage.php?iappid=37"]];
}    
}
- (void)viewDidLoad
{
// Create new SBJSON parser object

SBJsonParser *object = [[SBJsonParser alloc] init];

// Prepare URL request to download statuses from Twitter
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.kickintheapp.com/api/welcome/welcomemessage.php?iappid=37"]];
// NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"http://twitter.com/statuses/public_timeline.json"]];

// Perform request and get JSON back as a NSData object
NSData *response = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];

// Get JSON as a NSString from NSData response
NSString *json_string = [[NSString alloc] initWithData:response encoding:NSUTF8StringEncoding];


NSError *jsonParseError;
NSDictionary *status = [object objectWithString:json_string error:&jsonParseError];
if (!status) {
    // there's been a parse error; look at jsonParseError
    // for example:
    NSLog(@"JSON parse error: %@", jsonParseError);
}
NSString *messValue = [status objectForKey:@"message"];
NSUserDefaults *gMess = [NSUserDefaults standardUserDefaults];
[gMess setObject:messValue forKey:@"welcomeMessage"];
}