可以更新不在屏幕上的UIViewController吗?

时间:2014-03-31 06:08:35

标签: ios objective-c uitableview

我有一个侧面菜单控制器,它是rootViewController的一部分我永远不会从那里删除它,当它从屏幕上滑落时 - 它只是一个更新其frame细节的动画。

是否可以更新此视图,而不在场景中显示?我有一个UiTableView,我想在屏幕外重新加载它 - 所以当用户滑出屏幕时,它已经填充了新的内容。

我的第一个方法是委托 - 然而,委托方法不会被解雇,我相信这是因为它不在屏幕上。但是,我在某种程度上认为它在UIWindow中它在离开屏幕时从未真正像普通视图那样被释放?

修改

我正在使用this Github project作为菜单。

我要更新的视图位于UINavigation控制器中,深度为一级。我可以获取它的当前实例 - 但是,委托方法不会触发。

1 个答案:

答案 0 :(得分:1)

在我看来,你要和something like this一起去。即使没有,看看这个例子。这里RootViewController始终处于活动状态,您将一个视图控制器移动到父视图控制器并删除其他控制器。

我有两种方法可以解决它:

  1. 如果要从父视图控制器中删除第一个视图。不要删除它。因此控制器仍处于活动状态,并使用代理来触发事件。

  2. 删除第一个视图控制器,然后使用Root视图控制器获取更新,并在前一个视图控制器加载后从根视图控制器获取更新并更新此更新。

  3. 希望它至少可以给你一个想法。