我有一个标签栏控制器视图,可以从api调用中加载记录。由于每个选项卡上显示的是同一条记录的不同数据,因此我将对象存储在app委托中,并将其抓取在viewDidLoad上。
我遇到的问题是这条记录与其他记录有关,其中一个标签列出了其他记录。因此,如果您单击其中一个,它实际上需要重新加载相同的标签栏控制器。
我将使用instantiateViewControllerWithIdentifer方法重新加载相同的控制器,但后退按钮如何处理,因为如果它返回该对象现在已经消失。
我对重新加载旧对象的想法是保留一个加载记录的所有id的数组,然后返回到最后一个id并从api重新加载对象。
答案 0 :(得分:0)
对于您要做的事情,我建议您创建自己的标签栏控制器的自定义实现。通过这样做,您将能够将每个记录中的数据存储为自定义选项卡栏控制器中的属性。然后,您可以拥有标签栏控制器的多个实例,每个实例都有自己的数据(您不必在应用程序委托中存储任何内容,理想情况下不应将其用于此目的。)
以下是一个示例教程,其中作者创建了一个类似于您需要的自定义标签栏控制器: