有没有一种方法在每次显示UIView时被调用?

问题描述:

我正在写日历应用程序,现在我有weekView,weekViewController,dayView,dayViewController,monthView,monthViewController。有没有一种方法在每次显示UIView时被调用?

我想要做的是:当您在任何视图中选择一个日期,然后切换到另一个视图,我希望新视图也会显示相同的日期。

我已经设法在控制器*享选定的日期,但我不知道如何告诉视图每次显示时更新它们的内容?

+0

请参阅http://*.com/questions/6162211/iphone-ios-will-there-be-called-any-method-if-a-uiview-is-added-as-a-subview – danh 2013-05-07 01:12:20

尝试在视图控制器的- (void)viewWillAppear:(BOOL)animated方法中放置日期更新逻辑。 Here是参考。

+0

谢谢,viewWillAppear是正确的方法,但仍然存在问题:我使用UITabBarController来包含所有三个控制器,并使用tabBarController:didSelectViewController从前一个控制器获取选定日期,并在下一个控制器中进行设置。但是我发现viewWillAppear在选择日期设置之前被调用,所以实际上UIView保持不变。 – Jerrylk 2013-05-07 01:24:44

+0

我建议你创建一个全局单例对象,它可以被所有包含日期​​值的视图控制器访问,并且可以从'viewWillAppear:'方法中的单例对象读取日期值。这比你的方法更清洁。 – Stunner 2013-05-07 06:00:54

+0

@Jerrylk如果此答案有助于解决您的问题,请将其标记为答案(上/下箭头下方的复选标记)。 – Stunner 2013-05-08 20:32:20