在android程序编写过程中,为了实现国际化和更方便的统一化管理,一般都会把字符串等一些资源以xml的格式保存起来,放置在res/value目录下面。
本人在编写的过程中,经常出现各种字符串拼接的段落,尤其在adapter显示数据中,甚至要拼接5、6个字符串,简直到手抽筋,后来在闲时在网上无意看到这种方式,简直爱不释手,在此收集各种表达式。请各位大佬不吝赐教。
先来说一下使用方法:
在<string />标签里,可以用这种表现形式: <string name = "xx">固定文本%index$参数格式固定文本</string>,
举个栗子:
需要显示这样的字符串“名称:xx",其中xx是不固定的。
那我们可以.settext(getString(R.string.name)+xx);这样当然可以,
只是在这里我使用另一种方式:settext(getString(R.string.name, "xx");
然后来看string资源里面的写法:<string name = "name">名称:%1$s</string> 根据上面红色内容部分来看,固定文本对应的是”名称:“;%是不变的,暂且表示起始标志;1和index对应,表示在getString里面传参时第几个参数,从1开始;s和参数格式对应,常用的几个格式分别是:s(string);d(int);f(float)。
tips:参数格式是f的时候,需要在$后面f前面添加 .数字(前面有个点哦) ,用来确认保留几位小数。