android plurals用法
来源:互联网 发布:上海精神科医院 知乎 编辑:程序博客网 时间:2024/06/05 03:26
不同的语言对数量的语法规定有不同的规则。在英语里面,例如,1是特例。我们会直接写1book,而针对一个以上的我们会在book后加复数形式。这种区别对单数和复数来说是很普遍的,但是其他的语言做了更好的区分。对Android来说,它提供了一个plurals的资源集合,支持zero,one,two,few,many,和other六种模式。
对一个给定的语言和数字来说,决定使用哪一个case的规则是很复杂的,所以android提供了方法getQuantityString(),它可以用来为你选择合适的资源。
节点:
<resources> 必须的节点。必须为根节点。
没有属性。
<plurals>
字符串的集合,提供取决于某类事物个数的字符串。包含一个或者多个<item>节点
属性:
<item>
zero
当语言需要特别对待0时(就想阿拉伯)one
当语言需要特别对待1(就像英语里和其他语言里的1;在russian,任何以1结尾但是不是以11结尾的也使用这种情况)two
当语言需要特别对待1(例如Welsh的2,或者Slovenian的102)few
当语言需要特别对待small(例如Czech的2,3,4;或者以2,3,4结尾但是不是12,13,14的Polisth)many
当语言需要特别对待large(例如Maltese的11-99)other
当语言没有要求对特定资源进行特殊对待(例如中国的所有数字,或者英语的42<?xml version="1.0" encoding="utf-8"?> <resources> <plurals name="numberOfSongsAvailable"> <item quantity="one">Znaleziono jedną piosenkę.</item> <item quantity="other">Znaleziono %d piosenek.</item> </plurals> </resources>
cartText = (TextView) findViewById(R.id.itemsTextView);Resources res = getResources();String items = res.getQuantityString(R.plurals.numberOfItems, 1, 1);cartText.setText(items);
上述给定代码,每个数量将产生一个是何其复数形式的恰当的字符串。
getQuantityString()方法的第一个参数是复数资源id,第二个参数选择要使用的字符串。当参数为1时,按原样使用该字符串。当值不为1时,必须使用第三个参数,他的值放在%d所在的位置。如果在附属自愿中使用了一种格式化字符串,必须始终总有至少三个参数。第二个参数可能会令人困惑,这个参数的唯一差别就是值为1和不为1.
0 0
- android plurals用法
- Android plurals
- android-R.plurals
- plurals资源的用法(摘录)
- Android xliff含义和plurals
- 【Android开发】plurals 和 getQuantityString,以及%d 、%.d 、%1$s 、%1$d等的用法
- android中的Plurals(Quantity Strings)类型
- android中的Plurals(Quantity Strings)类型
- android 关于plurals 和xliff 的使用方法
- android中的Plurals(Quantity Strings)类型
- android中的Plurals(Quantity Strings)类型
- Android资源之String (四): plurals
- android中的Plurals(Quantity Strings)类型
- android中的Plurals(Quantity Strings)类型
- Android中的Searchview以及SearchableDictionary项目和plurals详解
- Android中的string资源占位符及Plurals string
- android_Quantity Strings (Plurals)
- Andrid中的plurals
- UVa 11292
- UITextField使用总结
- UVa 11300
- MediaWiki初探:安装及使用入门
- GitHub
- android plurals用法
- nginx查看并发连接数
- [从头读历史] 第256节 孔子和他的《春秋》 [BC597至BC538]
- React Native for Android 环境配置
- [yii2]不加载layout布局文件的实现方法
- UVa 11384
- HandlerThread的使用
- ASCII、GBK、unicode、utf-8、iso-8859-1等编码的发展史和相互关系
- UVa 11462