2010-08-03 71 views
2

我想在我的iphone應用程序中以編程方式更改語言環境(基本上,因爲並非所有語言都由iphone本身支持,所以用戶應該可以僅切換語言爲我的申請)。我在另一個問題How to force NSLocalizedString to use a specific language上看到,在OSX應用程序上?它應該與[[NSUserDefaults standardUserDefaults] setObject:[NSArray arrayWithObjects:@「de」,nil] forKey:@「AppleLanguages」]; - 但對我來說,它不... [NSLocale currentLocale]仍然返回系統的區域設置和'主包'給我從系統的區域設置的文件..更改當前iphone應用程序的語言環境(用於NSBundle的自定義語言環境?)

so ..有沒有辦法爲我的應用程序設置自定義區域設置?或者 - 這對我來說就足夠了 - 用不同的語言環境創建一個新的NSBundle實例?

+1

你混淆了兩件事。區域設置對應於「區域格式」,而本地化對應於「語言」。 – 2010-08-03 18:04:46

回答

2

好的,愚蠢的我..作爲鏈接的問題已經回答..該代碼需要重新啓動..即。當用戶選擇另一種語言調用時[[NSUserDefaults standardUserDefaults] setObject:[NSArray arrayWithObjects:@「de」,nil] forKey:@「AppleLanguages」]; - 下一次啓動應用程序時,[NSBundle mainBundle]將返回給定語言環境的正確資源..(儘管[NSLocale currentLocale]仍然會返回iphone範圍內的語言環境..但我認爲這對我無關緊要無論如何...)

相關問題