我正在开发一个需要本地化的应用程序。
我已按照以下步骤操作:
我已经使用finder在项目的根目录中创建了es.lproj,it.lproj,en.lproj文件夹。
我在每个文件夹中创建了Localizable.strings文件,其中的密钥对值与目标语言相对应。
我已使用Xcode中的Add Files To选项导入。
当我在iphone模拟器中测试应用程序时,一切正常。我将iphone配置为任何本地化语言,并正确翻译应用程序。
但是当我在设备中运行App时,只显示英文字符串。
我按照这些步骤进行了测试。
从Xcode 4右键上方支持文件夹,新文件。
创建Localizable.strings文件
在文件检查器中,部分本地化。我添加了其他语言。将文件创建为包含树中所有可本地化文件的文件夹。
在项目的根文件夹中,xcode为每种语言创建了一个文件夹。
编辑完每个文件后,我在模拟器中执行了一切正常。我已经在3种不同的设备上测试过,唯一的语言是英语。
在项目中 - >信息 - >本地化我添加了所有语言。 在Build Phases中我发现只引用了en.lproj文件夹中的Localizable.string文件。我试图添加其余的文件,但只接受一个Localizable文件。我已经在设备中使用“额外”添加的语言进行了测试但是没有用。
有人能帮助我吗?
提前致谢。
答案 0 :(得分:1)
试试这个:从设备中删除应用程序,清理项目,确保文件出现在Build Phases> Copy Bundle Resources中并再次运行。
答案 1 :(得分:1)
您是否尝试从设备中删除该应用,然后重新安装?
编辑:我已经检查过我的项目,我看到的名字是:English.lproj,French.lproj等。不知道这是否会产生影响,但你可以尝试一下。此外,您可以使用Finder转到iPhone的应用程序二进制文件,然后选择显示包内容以检查其内容并确保本地化文件存在。这可能有助于解决问题......
答案 2 :(得分:1)
您确定要在设备上正确测试吗?我只是尝试进行一个简单的本地化测试,只是一个不同语言的Hello世界,当我
我使用Xcode 4并按照与您相同的步骤操作。更改了我的设备语言,重新加载了应用程序,就在那里。
您可能需要进行全新安装才能实现此目的。将设备语言更改为“尚未看到的内容”后,请执行全新安装;]
也许本教程可以帮助您:Localization Tutorial with XCode
答案 3 :(得分:0)
如果它可以在模拟器中运行,但设备有本地化问题,那么Nils Munch提供的链接就有答案。在故障排除中说" 与iPhone模拟器不同,iPhone只识别格式为UTF-16的字符串文件。始终在设备上测试本地化,因为模拟器和设备的行为并不总是一样。"
我认为这里的问题可能是文件是UTF-8。模拟器可以处理,但设备无法处理。