从presentViewController保存数据后是否可以自动转到detailView。
目前, 我正在使用NavigationController,它是Master(UITableView)->Detail(UITextView),因此用户可以添加数据并保存到sqlite上,从表单保存数据后,表单将被关闭并出现MasterView。
我想要的是,保存数据后,表单将被关闭并自动转到DetailView而不是MasterView。
MasterViewController.m
- (void)addNew{
AddFormController *addFormController = [[AddFormController alloc]
initWithNibName:@"AddFormView" bundle:nil];
UINavigationController* navContainer = [[UINavigationController alloc] initWithRootViewController:addFormController];
[[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed:@"Header-Blank.png"] forBarMetrics:UIBarMetricsDefault];
[[UIApplication sharedApplication] setStatusBarHidden:YES];
[self.navigationController presentViewController:navContainer animated:YES completion:nil];
[addFormController release];
}
AddFormController.m
- (IBAction) saveTemplate {
.... // Saving data onto Sqlite
[self dismissViewControllerAnimated:YES completion:nil];
}
谢谢。
最佳答案
您可以在 MasterViewController
的 viewDidAppear
中呈现您的 DetailViewController
。
但是,由于您不希望每次都发生这种情况(例如,在启动应用程序时呈现 DetailViewController
),因此您需要设置一个 bool 属性标志,例如 dataSaved
MasterViewController
中的 code> 并仅当标志为 YES
时才执行我的第一段。您可以从 [AddFormController saveTemplate]
将标志设置为 YES
。怎么做?有多种方法,但我会使用委托(delegate)。
一旦您从 viewDidAppear
中呈现 DetailViewController
,请不要忘记取消设置该标志。
关于iphone - 保存数据后如何呈现详细 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12652783/