我正在使用带有视图控制器A,B和C的UINavigationController的storyboard。
A是导航控制器的根视图控制器,它在启动时获取一些数据。如果我单击A中的一行,该行将使用该数据转换为B视图控制器。单击B中的行将切换到C视图控制器。
稍后在我的应用程序中,例如我在C内,用户想要刷新数据。意思是我需要再次获取A视图控制器的根数据。
用户刷新数据后,如何重新构建导航层次结构?我需要在A中然后在B中更新数据源,最后在C中以某种方式更新。
答案 0 :(得分:0)
这仅仅是提前规划的问题,不是吗? >需要。在这种情况下,没有必要重建"任何事情(尽管你可以这样做,我想)。即使您正在显示C,A和B都仍然存在,因此您需要做的就是根据需要与他们进行通信。如果数据获取功率仅驻留在A中,则只需向A提供C可以调用的方法,以便请求刷新并接收更新的数据。如果A和B随后再次显示(因为用户从C弹回),他们当然会使用他们的viewWillAppear
更新各自的接口 。但目前A和B只是对象,而对象之间的通信毕竟是面向对象的编程。
答案 1 :(得分:0)
你应该将A的所有逻辑放在另一个可以从A和C访问的对象中。 我认为post是一个很好的起点