iphone - 保存数据后如何呈现详细 View

标签 iphone objective-c ios uinavigationcontroller

从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];
 }

谢谢。

最佳答案

您可以在 MasterViewControllerviewDidAppear 中呈现您的 DetailViewController

但是,由于您不希望每次都发生这种情况(例如,在启动应用程序时呈现 DetailViewController),因此您需要设置一个 bool 属性标志,例如 dataSaved MasterViewController 中的 code> 并仅当标志为 YES 时才执行我的第一段。您可以从 [AddFormController saveTemplate] 将标志设置为 YES。怎么做?有多种方法,但我会使用委托(delegate)。

一旦您从 viewDidAppear 中呈现 DetailViewController,请不要忘记取消设置该标志。

关于iphone - 保存数据后如何呈现详细 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12652783/

相关文章:

iphone - 通过 VMWare 进行 iOS 设备测试

objective-c - 拥有许多小的 CATextLayer 会导致调整窗口大小的速度变慢

objective-c - 为什么在针对 ios 5 应用程序时使用特定于 ios 6 的选项仍然可以编译或不会崩溃?

ios - 裁剪一个70*70px的正方形为正方形

iphone - 在 CTCallCenter callEventHandler 中取消隐藏 View 非常慢

iphone - 何时以及如何检测 iCloud 冲突?

iphone - NSBundle pathForResource :ofType: occasionally returns nil for one resource

objective-c - 以编程方式生成适合打印机的输出

ios - 为什么 faSTLane 匹配让我输入密码,即使我已经输入了

ios - Mac 上的两个开发人员证书