【发布时间】:2010-01-31 19:59:01
【问题描述】:
我有视图 A,当用户单击按钮时,我会弹出视图 B。当用户关闭视图 B,我们返回视图 A 我想刷新视图 A 上的标签,但是否有我可以用来检测我们已经返回到视图B吗?我知道 ViewDidLoad 不会再次触发。
【问题讨论】:
标签: iphone xamarin.ios subview
我有视图 A,当用户单击按钮时,我会弹出视图 B。当用户关闭视图 B,我们返回视图 A 我想刷新视图 A 上的标签,但是否有我可以用来检测我们已经返回到视图B吗?我知道 ViewDidLoad 不会再次触发。
【问题讨论】:
标签: iphone xamarin.ios subview
我对您问题中的观点感到困惑,但您可以查看NSNotificationCenter。
在这种情况下,您将在用户关闭视图 B 时发布 NSNotification 事件。
视图 A 和视图 B 可以向通知中心注册以侦听此解雇通知,在听到此通知时调用选择器(方法)。
在此方法中,您可以更新标签的状态或执行任何其他涉及更新应用程序状态的操作。
同样,您可以在弹出视图 B 时发布通知,并让其他类注册该通知类型。
有关NSNotificationCenter 的更多信息位于Apple's documentation site。
【讨论】:
听起来您可能指的是 UIViewControllers,而不是 UIViews,对吗?在这种情况下,您可以使用 -viewWillDisappear: (BOOL) 动画和 -viewDidDisappear: (BOOL) 动画来确定您的 viewController 何时即将被解雇/刚刚被解雇。这些应该在您的示例中的视图 B 上实现。如果您想知道 View A 何时再次可见,您可以使用 -viewWillAppear: 和 -viewDidAppear。
【讨论】: