Iphone 如何在保存数据后显示detailview

Iphone 如何在保存数据后显示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

从presentViewController保存数据后,是否可以自动转到detailView

目前,, 我使用的导航控制器是Master(UITableView)->Detail(UITextView),因此用户可以添加数据并保存到sqLite上,保存表单中的数据后,表单被解除,主视图出现

我想要的是,保存数据后,表单将被取消,并自动转到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];
}
 - (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.