2011-06-27 15 views
0

我正在開發一個iPhone應用程序,並且想爲它設置一個與用戶位置不同的位置。我想擁有蘋果公司告訴我的所有國際化文件,但我希望能夠選擇該語言。我可以做一個使用與用戶設置不同的語言的iPhone應用程序嗎?

例如:用戶正在使用德語,但我希望我的申請是英文的!

我希望用戶只爲應用程序設置語言,不管在手機中選擇的語言是什麼,我該怎麼做?

+1

爲什麼你想這樣做? – JeremyP

回答

1

不使用框架類進行國際化。您將不得不在自己的應用程序中構建自己的標籤,按鈕等管道。

1

該語言從NSUserDefaults載入。根據this,你可以用[[NSUserDefaults standardUserDefaults] setObject:[NSArray arrayWithObject:@"en"] forKey:@"AppleLanguage"]之類的東西覆蓋它並重新啓動應用程序。

現在,麻煩的是你需要重新啓動應用程序!一個可怕的方法可能是這樣的(未經測試):

UIApplication * app = [UIApplication sharedApplication]; 
[app openURL:...]; 
[[NSNotificationCenter defaultCenter] postNotificationName:UIApplicationWillTerminateNotification object:nil userInfo:nil]; 
[app.delegate applicationWillTerminate:app]; 
exit(0); 

其中...是重定向到一個自定義URL方案的HTTP URL您的應用程序句柄(ewwww)。

我不知道一個簡單的方法來重新加載UI /語言,而無需重新啓動應用程序。

相關問題