正如您可能知道的那样,Mozilla的目标是以原生Java/Android的形式在fennec上执行移动UI。
这包括使用布局XML文件,默认情况下,这些文件使用的内容如下
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:text="@string/text_a"
/>将@string/text_a解析为text_a文件中的strings.xml文件,执行l10n。
我们想要使用其他的东西,我想知道我们是否/如何将其连接到XML文件中。
因此,我很想获得一些指向android源代码的指针,这些源代码实际上是用来查找字符串的。
关于如何连接自定义的东西,我有三个想法,这些都不是事实检查的,基本上是因为我还没有找到完成任务的代码:
@moz-l10n/text_a,具有一个java实现的服务,返回该资源typemoz:l10n="text_a"自定义属性的值,该属性将被连接起来以处理生成的widgets。
我希望这里有一些人有一个好主意,指给我一个好的路,或者击落一些。
PS:我很感激没有自行车棚,关于android l10n计划是否好。
发布于 2011-10-21 00:04:16
因此,我很想获得一些指向
源代码的指针,这些源代码实际上是用来查找字符串的。
android.content.res.Resources将委托给android.content.res.AssetManager和getResourceText()方法。这反过来又深入到本机loadResourceValue()方法中。然后你就得靠自己了..。:-)
@
1) @moz-l10n/text_a,其中一个java实现的服务返回该资源类型的值。
除非您准备使用您自己的构建工具预处理您的人造资源文件,然后将有效的Android资源文件生成到res/目录中,否则您就不能发明新的资源类型(例如,@moz-10n)。这将需要修改构建工具和固件。
2) moz:l10n="text_a“自定义属性,该属性将被连接到post处理生成的小部件。
3)将我们想要用我们的方案本地化的小部件子类,添加2)
您的选项#3绝对是可能的,并且在创建自定义小部件时是相当典型的。可以想象,它的技术(通常涉及带有res/values/attrs.xml资源的declare-styleable文件)可以以某种方式应用于标准小部件类,但我从未见过这种情况。当然,您总是可以像如何完成选项1那样进行预处理。
https://stackoverflow.com/questions/7843452
复制相似问题