0

从子场景返回后,我尝试在父场景上更新 UITextView 文本,用户可以在其中输入导航返回后应该出现的内容。

父场景:

在此处输入图像描述

模态序列 ->

在此处输入图像描述

孩子

导航回来后,不会调用 viewWillAppear 或 viewDidLoad 方法,因此此 UITextView 控制器不会获得更新数据的提要。解决这个问题的最聪明的方法是什么。先感谢您。

编辑:

-(void)viewWillAppear:(BOOL)animated
{
   [super viewWillAppear:animated];
   NSLog(@"Calling viewWillAppear");
// SQLite access methods and other bla bla bla
}

从子场景返回后,不会调用 viewWillAppear -> NSLog 不会打印出来。

4

1 回答 1

1

像您所描述的那样的模态转场在技术上一直在屏幕上,因此viewDidLoad永远viewWillAppear不会被调用。

将数据从模态视图控制器获取到主视图控制器的最佳方法是使用委托。通过委托方法的参数(在您自己的自定义协议中定义)发回数据。在您的委托方法的实现中,执行您所有的 SQLite 调用,调用setNeedsDisplay,并以您想要的任何方式存储模态视图控制器传递的值。

于 2013-06-18T16:36:55.770 回答