我听说当你使用UITabBarCotroller(它看起来像是这样)时,标签栏图标的自定义是免费的,但我需要添加什么魔法才能使该布局跨越应用程序的实例?
答案 0 :(得分:1)
UITabBarController
管理UIViewControllers
数组。当应用程序退出时,您可以保留数组的顺序,并在应用程序启动时再次使用它。
当您的应用退出时,您应该查看tabBarControllers.viewControllers
数组,然后创建相应的名称或标识符数组,并使用NSUserDefaults
保存。
当您的应用启动时,您可以查看该数组的名称或标识符,并在创建视图控制器数组时使用它。然后将tabBarControllers.viewControllers
设置为该数组。
很抱歉,如果这很模糊,但您无法将视图控制器对象本身存储在应用程序的设置中,那么您需要提供其他类型的映射。如何最好地做到这一点取决于你的代码。
如果正在nib文件中设置视图控制器数组,则意味着您需要从应用程序委托的applicationDidFinishLaunching:
方法开始以编程方式开始。 applicationWillTerminate:
是保存订单的好地方,但您也可以将对象设置为标签栏代理并保存更改(因此,如果您的应用崩溃,它们不会丢失)。