复数形式
回答
使用gettext格式是个好主意。你有两种选择:
AsGettext被授权为LGPL,所以它应该可以用于任何项目。
你不需要任何额外的库。使用标准的Flex ResourceManager。在文本资源定义这样的复数形式:
minute=minute, minutes
在这种情况下,当你以后的此类资源要求的
resourceManager.getStringArray('BundleName', 'minute')
你得到多元价值观的像
[ 'minute', 'minutes' ]
数组
然后使用类似于
function getPlural(value:Number, plurals:Array):String
{
if (ResourceManager.getInstance().localeChain[0] == 'en_US')
if (value == 1) return plurals[0] else return plurals[1];
}
为当前语言环境选择正确的文本。你可以在一些包中直接定义这个函数,这对所有类都是通用的。不幸的是,你不能避免这样的功能,因为许多语言的复数规则是不同的。例如,对于俄语来说,表达将会复杂得多,并将采取三个复数形式。
顺便说一下,这种方法与gettext的工作方式非常相似。
非常有趣。如果你在实际文本中需要它们,你如何转义逗号? – 2012-10-05 07:58:56
@WimDeblauwe不幸的是,这是不可能的。如果您查看getStringArray()方法源代码,您将看到简单的'var array:Array = String(value).split(“,”)'用法。我看到的唯一方法是以某种方式在ResourceManagerImpl中重写此方法,但我从来没有见过这样的用例。 – koldoon 2012-10-09 06:09:30
- 1. 将复数形式绑定到矩形?
- 2. 复数形式的复选框
- 3. SQL名词复数形式的函数
- 4. PHP复杂形式
- 5. 翻译模型的复数形式
- 6. 用重力形式计数复选框
- 7. xgettext不会扫描复数形式
- 8. 发送数据形式NG重复
- 9. 多个复数形式中的gettext()
- 10. Watson Conversation如何处理复数形式?
- 11. LINQ选择LAMBDA形式重复计数
- 12. 当复数形式等于单数形式时的模型复数的Django翻译
- 13. 康复中心的形式?
- 14. C#防止复制形式
- 15. 复合键和形式
- 16. 如何复制形式
- 17. 复选框的形式
- 18. 形式复位也提交
- 19. c#形式挂mutithread修复
- 20. PHP:复选框和形式
- 21. jQuery的 - 复位形式
- 22. Rails的复杂形式
- 23. symfony形式重复位
- 24. 不能复位形式“$ setPristine”
- 25. 复选框嵌套形式
- 26. 形式在NG-重复
- 27. 重复成员的形式
- 28. 形式onreset事件复位
- 29. 复杂的复选框形式
- 30. 形式数据
查看您提供的链接;这听起来像只是一个封装的条件。我不知道有任何现有的库可以帮助解决这个问题。但我敢打赌,你可以在一个小时或更短的时间内写下类似内容,并将其作为项目在riaforge.com上发布。 – JeffryHouser 2011-05-27 14:36:32