0

我的故事板项目中有两个视图控制器。一旦我单击 ViewcontrollerOne 中的 tableview 行,它将通过将 value 和 settext 传递给 viewcontrollerTwo 中的标签来显示该行的内容。但是当我尝试第三个视图控制器并单击按钮时,第三个视图控制器正在发送具有不同值的相同数组名,但它没有显示在 viewcontrollerTwo 的标签中。

为什么?如何在 viewdidload 或移动到 viewcontrollerTwo 时刷新视图控制器?

目前,我将此代码添加到 viewcontrollerTwo 的viewDidLoad:方法中。

[self.view setNeedsDisplay]
4

2 回答 2

0

你总是可以使用 NSNotificationCenter 来更新你的父视图控制器

在你的父视图控制器上放这个:

//since child view controller calls turnItOff, notification center calls function "turnButtonCountinuesOff"
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(turnButtonCountinuesOff) name:@"turnItOff" object:nil];

turnButtonCountinesOff 是您在父视图控制器中的功能

在你的孩子 viewcontroller 放这个:

//connect to parent UI view controller calls notification turnItOff.
[[NSNotificationCenter defaultCenter] postNotificationName:@"turnItOff" object:nil];

希望能帮助到你。

于 2013-06-26T10:50:54.747 回答
0

您可以通过将其放入您的applicationDidBecomeActive

[yourcontroller reloadInputViews];

但是,当您使用相同的 tableview 时,为什么不重新加载您的 tableview。

于 2013-04-09T04:30:17.387 回答