0

我有两个 viewControllers 父和子,从父我打开子 viewController 是这样的:

ClildVC *modal = [[ClildVC alloc] initWithNibName:nil bundle:nil];
modal.modalPresentationStyle = UIModalPresentationPageSheet;
[self presentModalViewController:modal animated:YES];

当我从子视图返回到父视图时,我使用这个:

[self dismissModalViewControllerAnimated:YES];

我希望,当返回父 viewController 时,它会被刷新(重新加载),就像我第一次打开它一样。

4

3 回答 3

3

在 .h 和 .m 中的 parentViewController 中添加方法

- (void)refreshData
{
    //refresh your data
}

在你的 childViewController 中输入这个

- (IBAction)backToParent
{
    YourParentController *parent = (YourParentController *)self.parentViewController;
    [parent refreshData];

    [self dismissModalViewControllerAnimated:YES];
}
于 2013-05-30T09:34:57.507 回答
1

dismissModalViewControllerAnimated:自 iOS6 起已弃用

在调用父视图控制器上的数据更新后,您应该dismissViewControllerAnimated:completion:在子视图控制器中使用 iOS5 中引入的

于 2015-07-09T22:27:29.293 回答
0

您在没有 nib 文件和包标识符的情况下启动。

所以它在一个不存在的包中寻找一个不存在的笔尖

要么在 IB (xcode 4) 或故事板 (4.2 +) 中设计 nib,要么以编程方式使用模态视图控制器的指定初始化程序。

于 2013-05-23T15:06:45.657 回答