这篇文章主要是自己在使用中的心得和理解而写;下面是整理的内容:

plurals

android对数量(单复数)进行处理 它支持zero,one,two,few,many,和other;可以理解plurals为一个数量集合的简单资源,它可以通过name的属性来访问(不是xml文件的name)。这样,你可以把plural资源和其他的简单资源一样放在同一个xml 文件里面,在同一个<resoures>节点下。

在工程的values下建一个xml文件 ,或者放在strings文件里也可以;

<?xml version="1.0" encoding="utf-8"?>
<resources ><plurals name="xxxx"><item quantity="one"> one music songs </item><item quantity="other"> %d music songs </item></plurals></resources

name 就是plurals的属性名,我这里就随便写了,其中plurals的Item可以是一个或多个,这就是一个完整的plurals资源文件;(%d代表的是整数)

下面是如何使用资源文件:

Resources res = getResources();
String string =  res.getQuantityString(R.plurals.xxxx,0,8);

其中,0对应的是quantity=“one”,8对应的是other;也就是有几个item,

getQuantityString除了资源ID外,就要有几个参数,参数值和plurals 支持的几个值有关,就不一一举例,自己测试下吧

xliff

这里要先了解%n$d、%n$f和%n$s是和含义
举个例子:
<string name="old">%1$s今年%2$d岁了</string>

%1$s:    %1表示第一个可替换的变量 $s表示变量是string型
%2$d:   %2表示第二个可替换的变量 $d 表示变量是整型
还有一个$f表示的是浮点型,目前android支持者三种类型的变量
如果想要在变量前加空格的,拿整型举例:
<string name="old">%1$s今年%2$md岁了</string>

其中$md 中的m代表m个空格,其它的同理;下面开始讲xliff了,在写xliff之前 一定要引用xliff的命名空间,不引用xliff是无效的

<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">

xliff例子:

<string name="old_"><xliff:g id="name">%1$s</xliff:g>今年<xliff:g id="age">%2$d</xliff:g>岁了</string>

代码中

String str =getResources().getString(R.string.old_);String string = str.format(str, "李小姐",27);
输出结果:
李小姐今年27岁了
附上 android 关于plural 原文解释地址 
http://developer.android.com/guide/topics/resources/string-resource.html#Plurals
大功告成

android 关于plurals 和xliff 的使用方法相关推荐

  1. android studio butterknife自动生成,Android Studio使用ButterKnife和Zelezny的方法

    Android Studio使用ButterKnife和Zelezny的方法 发布时间:2020-08-22 00:29:27 来源:脚本之家 阅读:182 作者:CSDN_陈诚 前言 ButterK ...

  2. Failed to resolve: com.android.support:appcompat-v7:27.+ 报错解决方法

    Failed to resolve: com.android.support:appcompat-v7:27.+ 报错解决方法 参考文章: (1)Failed to resolve: com.andr ...

  3. Android开发环境搭建及常见问题解决方法

    Android开发环境搭建及常见问题解决方法 参考文章: (1)Android开发环境搭建及常见问题解决方法 (2)https://www.cnblogs.com/rwxwsblog/p/476978 ...

  4. 在Android Studio中打开Android Device Monitor时报错的解决方法

    在Android Studio中打开Android Device Monitor时报错的解决方法 参考文章: (1)在Android Studio中打开Android Device Monitor时报 ...

  5. Android App定位和规避内存泄露方法研究

    from:http://site.douban.com/android/widget/notes/350758/note/167481484/ 工作中刚好用到,网上搜到的,觉得不错,与大家分享 And ...

  6. android利用反射调用截屏api,Android利用反射机制调用截屏方法和获取屏幕宽高的方法...

    想要在应用中进行截屏,可以直接调用 View 的 getDrawingCache 方法,但是这个方法截图的话是没有状态栏的,想要整屏截图就要自己来实现了. 还有一个方法可以调用系统隐藏的 screen ...

  7. android 模拟器识别,一种基于符号的识别Android应用运行在模拟器中的方法与流程...

    本发明涉及一种基于符号的识别android应用运行在模拟器中的方法. 背景技术: 很多的移动应用都会使用一种基于lbs的地理围栏的技术(如移动打卡),某些用户为了突破这种围栏的限制,将移动应用运行在模 ...

  8. android studio socket 失败,Android应用开发Android Studio建立Socket连接失败解决方法

    本文将带你了解Android应用开发Android Studio建立Socket连接失败解决方法,希望本文对大家学Android有所帮助. < Android Studio建立Socket连接失 ...

  9. 文件管理器android实现,Android开发之简单文件管理器实现方法

    易采站长站为您分析Android开发之简单文件管理器实现方法,简单实现了Android的文件目录查看,文件重命名,打开,删除等功能,需要的朋友可以参考下 本文实例讲述了Android开发之简单文件管理 ...

最新文章

  1. Navicat 使用sql命令建数据库和表详细过程_2
  2. 我对分布式多中心架构的几点看法
  3. PInvoke调用导致堆栈不对称
  4. nokia : Booklet 3G
  5. python可变类型和不可变深浅拷贝类型_python3笔记十四:python可变与不可变数据类型+深浅拷贝...
  6. bash error 环境变量错误
  7. dom文档对象手册_编程小白网页学习笔记之文档对象模型(DOM)
  8. 念整数 mooc翁恺
  9. excel能创建html吗,如何通过Excel电子表格使用循环创建单独的HTML发布页面
  10. VB6 mysql二进制读取,vb6关于VB以二进制(binary)方式读取文本内容
  11. Android开发环境搭建ADT-Bundle集成IDE及Hello World
  12. java 反射 接口_Java 怎么通过反射获取并实现这个类里面的接口,并且实现接口中的方法...
  13. Hololens工程发布前后覆盖的问题
  14. java download oracle,Java Archive Downloads - Java SE 6 | Oracle 中国
  15. SQL中ALTER TABLE 语句
  16. html js获取本地ip,在js获取本地IP地址
  17. html静态页面图书馆管理,静态页面管理
  18. 5月6阴阳师服务器维护,阴阳师正式服5月6日更新公告
  19. 人人网,给我个“上”你的理由吧?
  20. 北京生鲜小程序开发之万象优鲜生鲜配送系统源码

热门文章

  1. 2010 CGDC 随谈
  2. VScode配置Anaconda
  3. SQL语句on duplicate key update 的意思
  4. OPPOA53_官方线刷包_救砖包_解账户锁
  5. 公交联想(一) 掌上公交 APP 接口分析
  6. matlab游程检验结果分析,SPSS教程学习笔记6:数据随机化游程检验
  7. 巴西光伏产业站在发展的“风口”上
  8. J - Supermarket
  9. 【最强大脑】全球脑王的极客挑战赛之路:1413876分夺冠如何炼成?
  10. 《绝地求生大逃杀》为什么具有高人气