我正在创建一个带有日期选择器和maxdate的应用程序,只有一次工作意味着如果应用程序在后台进行了几天我的maxdate没有更新。 大多数方法都告诉应用程序重新获得焦点,以便检查maxdate。 提前thx:)
答案 0 :(得分:0)
当您的应用程序来自后台时,将不会调用委托方法viewWillAppear。相反,你应该做下面的事情。
在重新激活时,如果你想为viewcontroller携带一个特定的东西,你应该在它的viewDidLaod方法中注册一个通知。
'UIApplicationDidBecomeActiveNotification'会自动通知您的应用程序和给定的控制器,如果他们已注册。因此,请在viewDidLoad方法中添加以下代码。
[[NSNotificationCenter defaultCenter]addObserver:self
selector:@selector(setMaxDate)
name:UIApplicationDidBecomeActiveNotification
object:nil];
现在写下方法,
-(void) setMaxDate
{
mySelectedDate.maximumDate = [NSDate date];
}
不要忘记在dealloc方法中删除观察者。