1

嗨,我在 tabview 控制器中有一个 viewcontroller。我决定使用 NSNotification 来标记 tabview 控制器中的视图何时需要更新其数据。以前每个人都有逻辑来决定数据模型的状态并相应地更新。

我的更新代码调用了一些东西,这些东西又调用了委托方法。这些都在不使用通知时工作。

我第一次尝试通知似乎在视图控制器初始化之前调用了选择器(至少在 viewDidload 之前)。除此之外,当通知选择器中的更新运行并且视图控制器没有更新时,委托方法永远不会被调用。似乎视图控制器处于某种未知状态。

我运行了一个测试并将相同的更新代码放在 viewDidLoad 中,并且仅在调用 viewDidLoad 之后才调用通知代码。这行得通。

我的问题是,是否有另一种方法可以防止在 viewDidLoad 之前调用通知选择器方法,或者对象被正确初始化。

我正在使用情节提要,所以我没有对视图的创建等进行编程。

我希望这很清楚 - 发布一大堆代码不会更容易。

4

1 回答 1

0

谢谢各位,都对!我在应用程序委托中设置了通知。我应该把它放在 viewDidLoad 的末尾。然后仅在有后续更新时才调用它,并且我不需要标志来阻止第一个通知在对象启动并运行之前进行更新。

于 2012-02-06T09:21:06.760 回答