如何爲多種語言編寫一個應用程序?用不同的語言編寫一個應用程序
我聽說Apple拒絕只包含不同語言的應用程序。那麼你怎麼能改變你的圖片,文字和圖標爲特定的國家或語言?
我向App Store提交了三個應用程序。但是,他們的差異僅在語言(或圖像中的語言/文本)內。這就是爲什麼他們兩個被拒絕的原因。現在我想爲所有想要支持的國家/語言編寫一個應用程序。
如何爲多種語言編寫一個應用程序?用不同的語言編寫一個應用程序
我聽說Apple拒絕只包含不同語言的應用程序。那麼你怎麼能改變你的圖片,文字和圖標爲特定的國家或語言?
我向App Store提交了三個應用程序。但是,他們的差異僅在語言(或圖像中的語言/文本)內。這就是爲什麼他們兩個被拒絕的原因。現在我想爲所有想要支持的國家/語言編寫一個應用程序。
對不同語言的本地化得到了蘋果公司的全面支持和明確的接受。
看這裏:Internationalization and Localization,特別是在這個樣本:International Mountains。
如果他們唯一的區別是語言,則不能發佈兩個應用程序。這違反了App Store中有關使功能相同的應用程序的規定。
解決方案就是我指出的:您可以輕鬆地在同一個應用程序二進制文件中包含多種語言支持。所以,去...
可可已內置支持本地化 - 有一個entire section of the developer site致力於這個話題。
但是,首先要做的第一步是閱讀Internationalization Programming Topics文檔,因爲這會引導您完成嚮應用程序添加其他字符串資源等的過程。
Apple支持33種語言。下面是語言列表:
en,
fr,
it,
de,
ja,
nl,
es,
pt,
pt-PT,
da,
fi,
nb,
sv,
ko,
zh-Hans,
zh-Hant,
ru,
pl,
tr,
uk,
ar,
hr,
cs,
el,
he,
ro,
sk,
th,
id,
en-GB,
ca,
hu,
vi
您可以使用此代碼查找當地語言:
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSArray *languages = [defaults objectForKey:@"AppleLanguages"];
NSString *currentLanguage = [languages objectAtIndex:0];
現在,您可以根據自己的意願把if
條件,像這樣:
if ([currentLanguage isEqualToString:@"it"])
imgView.image = [UIImage imageNamed:@"italy.jpg"];
if ([currentLanguage isEqualToString:@"en"])
imgView.image = [UIImage imageNamed:@"america.jpg"];
if ([currentLanguage isEqualToString:@"fr"])
imgView.image = [UIImage imageNamed:@"france.jpg"];
//Where imgView is an UIImageView declared globaly in viewcontroller.h part.
我發現了一個很好的教程,很好地解釋了我的問題。 http://adeem.me/blog/2009/05/10/tutorial-part-2-localizing-your-iphone-application/ – BarryK88 2011-06-01 09:35:14