Iphone 如何在保存数据后显示detailview
从presentViewController保存数据后,是否可以自动转到detailView 目前,, 我使用的导航控制器是Master(UITableView)->Detail(UITextView),因此用户可以添加数据并保存到sqLite上,保存表单中的数据后,表单被解除,主视图出现 我想要的是,保存数据后,表单将被取消,并自动转到DetailView而不是MasterView MasterViewController.mIphone 如何在保存数据后显示detailview,iphone,objective-c,ios,uinavigationcontroller,Iphone,Objective C,Ios,Uinavigationcontroller,从presentViewController保存数据后,是否可以自动转到detailView 目前,, 我使用的导航控制器是Master(UITableView)->Detail(UITextView),因此用户可以添加数据并保存到sqLite上,保存表单中的数据后,表单被解除,主视图出现 我想要的是,保存数据后,表单将被取消,并自动转到DetailView而不是MasterView MasterViewController.m - (void)addNew{ AddFormControll
- (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];
}
- (IBAction) saveTemplate {
.... // Saving data onto Sqlite
[self dismissViewControllerAnimated:YES completion:nil];
}
AddFormController.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];
}
- (IBAction) saveTemplate {
.... // Saving data onto Sqlite
[self dismissViewControllerAnimated:YES completion:nil];
}
谢谢。您可以在
MasterViewController
的视图显示中显示您的DetailViewController
但是,由于您不希望每次都发生这种情况(例如,在启动应用程序时显示DetailViewController
),因此您希望在MasterViewController
中设置一个布尔属性标志,如dataSaved
,并仅在标志为YES
时执行我的第一段。您可以从[AddFormController saveTemplate]
将标志设置为YES
。怎么做?有几种方法,但我会使用委托
而且,当您从viewdide>显示DetailViewController
时,不要忘记取消设置标志,这是个好主意!今天晚些时候我会试试这个方法。
I think you should use this code.It is simpler than above.
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 pushViewController:rvc animated:YES];
[addFormController release];
}
AddFormController.m
- (IBAction) saveTemplate {
.... // Saving data onto Sqlite
[self.navigationController popViewControllerAnimated:YES];
}
I think it will work better.