我有一个带有标签栏 View Controller 的 Storyboard,它加载了一个导航 Controller ,该导航 Controller 加载了多个 View Controller 。当您从一个 View Controller 转到下一个 View Controller 并返回到第一个 View Controller 时,数据会重新加载。我想缓存 View Controller 以避免重新加载数据。我不想以编程方式加载 View Controller 。有没有办法使用 Storyboard 代码启用缓存?
最佳答案
当你dismiss/pop一个UIViewController时,你想缓存
您将它从 UIViewController
持有的数据,而不是UIViewController
本身UIWindow
的层次结构中删除,当您再次呈现/推送 它时,它的生命周期会重置并再次触发,从而导致您重新获取数据在 UIViewController
中表示,因此,缓存数据并在您呈现/推送 UIViewController
时对其进行检查是您要查找的内容.
开始,我建议您查看一些您熟悉的本地数据库,例如 Realm .
因此,当您获取数据时,您将其存储在 Realm
中,然后当您呈现/推送 UIViewController
时,您会对这些数据进行检查数据,如果它们存在,否则再次获取它们,您还可以制定一个计划,在一段时间后清除缓存的数据。
关于ios - 缓存 Storyboard之间的 View Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57130128/