2010-05-21 142 views
0

我在我的應用程序中有一個語言切換,如果用戶切換語言,我可以提供一個activityIndi​​cator並使用新的語言默認值重新初始化應用程序的所有視圖,這將非常易於管理。對iPhone設置如何管理語言變化進行分類。是否有捷徑可尋?以編程方式重新啓動應用程序?

回答

2

您是否擁有頂級視圖,如UITabBarController或UINavigationController?如果是這樣,你可以嘗試從它的超級視圖(它應該是你的UIWindow)中刪除它並創建一個新的。

例如,在我的應用程序委託我:

// Add the tab bar controller's current view as a subview of the window 
[window addSubview:self.tabBarController.view]; 
[window makeKeyAndVisible]; 

要重做這一點,你可以嘗試,在你的應用程序代理:

[self.tabBarController.view removeFromSuperView]; 
self.tabBarController = //create a new tab bar controller 
[window addSubview:self.tabBarController.view]; 

也許有更好的方法,但這可能會是我的第一個方法。

+0

這確實有幫助。這實際上迫使我重新組織應用程序生命週期的方式。更多邏輯代碼。謝謝! – 2010-05-21 23:59:24

相關問題