Objective c 如何使用故事板iOS7调用视图

Objective c 如何使用故事板iOS7调用视图,objective-c,ios7,storyboard,Objective C,Ios7,Storyboard,我在用故事板。 我记得很久以前我使用过iOS4=每次视图出现时,调用 -(void)viewWillAppear:(BOOL)Animated {} 方法。 现在,若我按下Home按钮并再次运行应用程序,这个方法不会调用 如何修复它 如果按home键后出现UIView,我需要更新它。试试这个,调用super -(void)viewWillAppear:(BOOL)animated { [super viewWillAppear:animated]; } 函数VIEWWILLEXPEN

我在用故事板。 我记得很久以前我使用过iOS4=每次视图出现时,调用

-(void)viewWillAppear:(BOOL)Animated {}
方法。 现在,若我按下Home按钮并再次运行应用程序,这个方法不会调用

如何修复它


如果按home键后出现UIView,我需要更新它。

试试这个,调用super

-(void)viewWillAppear:(BOOL)animated
{
    [super viewWillAppear:animated];
}
函数VIEWWILLEXPEND不是UIView的一部分。它是UIViewController的一部分

它是在视图控制器的视图加载之后,在它开始转换到屏幕之前调用的

如果您创建UIView的子类并将此函数放入其中,那么它将永远不会被调用,因为它不应该被调用

编辑

当应用程序从后台返回时,不会调用ViewWillDisplay,这是正确的

如果您想在发生这种情况时更新应用程序的一部分,则可以在AppDelegate中执行某些操作

我建议不要尝试存储属性等。。。但在AppDelegate中。你应该这样做

- (void)applicationWillEnterForeground:(UIApplication *)application
{
    // Called as part of the transition from the background to the active state; here you can undo many of the changes made on entering the background.

    // just pass the message on. In your view you will need to add an observer for this notification
    [[NSNotificationCenter defaultCenter] postNotificationName:@"UpdateViewNotification" object:nil];
}

实际上,viewwillbeen的行为仍然相同。当视图出现时会触发。。。其他地方一定有错误。ViewWillDisplay是UIViewController的一部分,而不是UIView。查看我的答案。好的,我如何调用指定视图的更新函数,以及如何捕获它是否从后台出现?阿瑟:我明白了。我不太明白home按钮的意思。我会更新的。