在XCode中实现多语言环境支持
2009-12-28 17:08
190 查看
方法非常简单:
在项目中点右键,选择Add->New File
在列表中选择Strings File
可以叫做Localizable.strings,也可以取别的名字,比如MyApp.strings
选中MyApp.string,按command+i,点击左下方的Make File Localizable,你会看到General中的Localizations里面已经有了English。
点击下面的Add Localization,添加一个zh_CN(简体中文)和一个zh_TW 或者 zh_HK(繁体中文)。注意zh_Hans(简体中文)和zh_Hant(繁体中文)在Mac中可以正确识别,但是在iPhone中不能正确识别。
如果你想支持别的语言,可以添加:
日语:Japanese
德语:German
西班牙语:Spanish
法语:French
.strings文件的内容可以是标准的plist格式,也可以是旧的列表格式:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>mykey</key>
<string>myvalue</string>
….
</dict>
</plist>
字符串如果要换行的话,直接按回车换行,不要写成/n这种形式。
或者直接使用旧式的列表格式:
"mykey" = "myvalue";
…
注意每行后面加分号。
如果你使用的是Localizable.strings,那么你在程序中可以这样获取字符串:
NSLocalizedString(@"mykey", nil)
如果你使用的是自定义名字的.strings,比如MyApp.strings,那么你在程序中可以这样获取字符串:
NSLocalizedStringFromTable (@"mykey",@"MyApp", nil)
这样即可获取到"myvalue"这个字符串,可以是任何语言。
在项目中点右键,选择Add->New File
在列表中选择Strings File
可以叫做Localizable.strings,也可以取别的名字,比如MyApp.strings
选中MyApp.string,按command+i,点击左下方的Make File Localizable,你会看到General中的Localizations里面已经有了English。
点击下面的Add Localization,添加一个zh_CN(简体中文)和一个zh_TW 或者 zh_HK(繁体中文)。注意zh_Hans(简体中文)和zh_Hant(繁体中文)在Mac中可以正确识别,但是在iPhone中不能正确识别。
如果你想支持别的语言,可以添加:
日语:Japanese
德语:German
西班牙语:Spanish
法语:French
.strings文件的内容可以是标准的plist格式,也可以是旧的列表格式:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>mykey</key>
<string>myvalue</string>
….
</dict>
</plist>
字符串如果要换行的话,直接按回车换行,不要写成/n这种形式。
或者直接使用旧式的列表格式:
"mykey" = "myvalue";
…
注意每行后面加分号。
如果你使用的是Localizable.strings,那么你在程序中可以这样获取字符串:
NSLocalizedString(@"mykey", nil)
如果你使用的是自定义名字的.strings,比如MyApp.strings,那么你在程序中可以这样获取字符串:
NSLocalizedStringFromTable (@"mykey",@"MyApp", nil)
这样即可获取到"myvalue"这个字符串,可以是任何语言。
相关文章推荐
- Flex配置通过配置语言环境实现多国语言
- RFC3986编码 C 语言实现(支持大部分中文)
- 关于 页面多语言支持的纯前端(JQuery插件)实现及 .json 文件读取报404的问题
- 在CakePHP 1.2 中实现多语言支持——i18n 和 L10n 的使用简述
- xcode4.2的本地化多语言支持
- 设置Linux桌面环境,实现HiDPI显示支持
- XCode 4.2支持iOS 5.1.1真机调试的实现
- 黄聪:让WordPress主题支持语言本地化(使用poedit软件实现中文翻译功能)
- linux环境下实现svn服务器支持http协议
- Mac OS X10.10_xcode6.1_ios8.1环境下,编译lame静态库libmp3lame.a,支持arm64 armv7s x86_64 i386 armv7指令集
- 转:在ASP.NET MVC中通过URL路由实现对多语言的支持
- iOS中代码支持多国语言切换的实现(Xcode5+iOS7)
- Cocoa程序支持多国语言环境
- 如何让你的iPhone程序支持多语言环境(本地化)
- 在ASP.NET MVC中通过URL路由实现对多语言的支持
- 晚上无聊象征性收取了网友100元辛苦费,实现支持多语言功能的XML语言包版的C#的ASP.NET多语言支持例子程序
- iOS中代码支持多国语言切换的实现(Xcode5+iOS7)
- Linux 环境下C语言编译实现贪吃蛇游戏(转载)
- 分享两种实现Winform程序的多语言支持的解决方案
- 低版本XCode支持高版本iOS真机调试的实现