在iOS应用程序中保存presentModalViewController的状态

时间:2012-07-18 17:36:50

标签: ios objective-c iphone uiviewcontroller

我正在创建一个需要过滤器按钮的应用程序。当我点击过滤器按钮时,ModalViewController将从屏幕底部弹出。

    [self presentModalViewController:filterActivity animated:YES];

当我完成那个过滤器屏幕后,我用

解雇它
[self dismissModalViewControllerAnimated:YES];

现在问题是当我解雇ModalViewController时,在UITextField中输入的所有日期都消失了。有没有办法保存数据或保存presentModalViewController的状态?

2 个答案:

答案 0 :(得分:0)

实现此目标的一种标准方法是创建一个协议,其中包含一个方法“ - (void)userUpdates:(NSDIctionary *)dict”,并让主视图控制器实现它。为模态视图控制器提供“@property(非原子,弱)id委托”属性,并在运行模态对象之前设置它。然后,如果用户确实更新了某些信息,请使用协议将其提供给主控制器。

答案 1 :(得分:0)

我解决了这个问题。通过使用Singleton模式,我已经解决了这个问题。现在我可以看到文本字段或标签中的数据,即使我解除了modalviewcontroller并再次返回。单身人士代码

+ (MNActivityFilter *) sharedManager {
static dispatch_once_t once;
static MNActivityFilter *sharedManager;
dispatch_once(&once, ^ { sharedManager = [[MNActivityFilter alloc] init]; });
return sharedManager;

}