【发布时间】:2020-05-22 05:52:38
【问题描述】:
我在我的应用程序中使用本地化。每当用户在应用程序中更改语言时,我都会设置所选语言并创建新的故事板并使其成为根视图控制器。一切正常。但我面临的问题是,每当我创建新故事板并使其 rootviewcontroller 内存使用量不断增加时,例如在启动应用程序使用 117 MB 时,我更改了语言并将新故事设置为 160-170 MB,我再次将其更改为 220-230 MB 的语言。那么如何销毁以前的情节提要并创建新的情节提要。
func makeRootViewController(controller_Identifier: String, storyboard: String?) {
let navController = UINavigationController()
navController.setNavigationBarHidden(true, animated: false)
let storyboard = UIStoryboard(name: storyboard ?? "Main", bundle: Bundle.main)
let vc = storyboard.instantiateViewController(withIdentifier: controller_Identifier)
navController.viewControllers = [vc]
UIApplication.shared.keyWindow?.rootViewController?.removeFromParent()
UIApplication.shared.keyWindow?.rootViewController = nil
UIApplication.shared.keyWindow?.rootViewController = navController
}
【问题讨论】:
标签: ios swift storyboard uistoryboard