我想标题是不言自明的。
5 回答
我也只是在看这个。如果你只是需要一些东西来完成一些繁重的工作,并且你已经在使用 OsX,你可以使用 xsltproc 和这个简单的 xsl 来帮助你
xsl:
<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="string">
"<xsl:value-of select="@name"/>"= "<xsl:apply-templates/>"; </xsl:template>
<xsl:template match="resources">
<xsl:apply-templates select="string"/> </xsl:template>
</xsl:stylesheet>
将其保存到文件 transform.xsl 或其他文件中,然后从 shell 运行以下命令:
xsltproc transform.xsl your_android_strings.xml > fileforxcode.out
这似乎产生了一些看起来正确的东西,尽管您可能需要单独处理任何格式字符串。无论如何,它可能会为您节省一些工作。
您可以从 Android .xml 文件中提取本地化,然后使用最新版本的TM 数据库工具将其添加到 iPhone .string 文件中。这很容易:
- 启动工具
- 开源和目标 Android xml 文件并将本地化导入 TM
- 打开 .string 文件并用 TM 翻译它
- 保存 .string 文件
请在此处查看详细说明
我在这里使用脚本。它将已经翻译的 Android 本地化字符串文件转换为 iOS Localizable.strings 文件,考虑到字符串占位符 ( %1$s
become %1$@
) 的转换。它是一个简短的 ruby 脚本,很容易理解。在构建过程开始时将其作为运行脚本链接到 Xcode。
如果您不想预处理字符串而只是将 android strings.xml 文件拖放到 iPhone 项目中,也可以使用此选项。
这并不能真正回答您的问题,但您可以考虑将DMLocalizedString用于您未来的 iOS+Android 项目。目前源代码仅适用于 iOS,但我相信制作 Android 版本非常容易。