iOS - 本地化
准备
项目添加本地化:Project - Info - Localizations - 添加需要的支持
English:默认英文
Chinese(Simplified):简体中文
Chinese(Traditional):繁体中文
app icon 图标文字本地化
即提供不同的展示名字;
- 1 添加Resource - Strings File - 注意命名!
InfoPlist.strings - 2 修改InfoPlist.strings文件的 Localization属性:添加需要的支持
- 3 然后InfoPlist.strings文件的下面会对应包含需要支持的本地化文件:在每个文件里分别添加
CFBundleDisplayName = "英文";
CFBundleDisplayName = "简体中文";
CFBundleDisplayName = "繁体中文";
注:其实更宏定义很像,就是文本替换;
- 4 听说需要在 info.plist 中 需要Application has localized display name = YES;(实测好像可以不添加)
- 1 添加Resource - Strings File - 注意命名!
Localizable.strings - 2 修改Localizable.strings文件的 Localization属性:添加需要的支持
- 3 然后Localizable.strings文件的下面会对应包含需要支持的本地化文件:在每个文件里分别添加
"OK"="OK";
"OK"="确定";
"OK"="確定";
注:前面的OK,就是开发过程中使用的"OK"字符串,系统会自动识别本地化,替换相应的字符;
使用:NSLocalizedString(@"Cancel", nil);// 会相应替换字符串,图片名称也是一样可用;
- 4 部分修改:
NSLocalizedString(@"OK", @"假的"); // 这里的走你,相当于标记,与InfoPlist.strings中对应的注释。举例:
/*!
*假的
*/
"OK"="不 OK";
注:没有使用标记的 NSLocalizedString 还是会使用原来的字符,只有对应标记的才替换;
storyboard 的本地化 【iOS|iOS - 本地化】类似Localizable.strings文件,添加Localization的支持,会出现多个storyboard!如果要画多个sb,我还不如纯代码!为了 偷懒的话,直接在源文件使用字符串本地化,sb就搞一个好了,字符串替换实现简单的本地化;要是界面都要本地化,真是崩溃啊;