很多时分我们理性Google在设计Android时恪守了大量MVC架构方式,能够让写公共代码、美工和详细逻辑开发人员
独立出来。
有关Android的资源文件values/strings.xml中如何完成格式化字符串呢?
这里Android123举个简单的例子,以及最终可能会用到哪些中央。
<?xmlversion=”1.0″encoding=”utf-8″?>

cwj_Demo
android开发网
上面是一段简单的字符串资源文件,没有用到格式化,由于比拟简单直接描绘了意义,
当我们设计一个相似DeletexxxFile?的时分,我们可能需求在Java中动态获取xxx的称号,所以定义资源时使
用格式化能够轻松处理,不需求一堆String去拼接或StringBuffer一个一个append这样的愚笨办法,
看例子
Delete%1$sFile
这里%1$s代表这是一个字符串型的,假如是整数型能够写为%1$d,相似printf这样的格式化字符串函数,
当然假如包含了多个需求格式化的内容,则第二个能够写为%2$s或%2$d了,那么最终在Java中如何调用呢?看下面的
例子:
例一:整数型的
Iam%1$dyearsold定义的是这样的
当然,我们根绝不测状况,比方冒出个secret这样的string类型的,留意上面是%1$d不是%1$s,所以默许规范的兼并
成为
intnAge=23;
StringsAgeFormat=getResources().getString(R.string.alert);
StringsFinalAge=String.format(sAgeFormat,nAge);
这样执行完后,就组成了Iam23yearsold,是不是很便当啊.
当然了,下面看下String字符串时的状况.
例二:字符串型的
StringsName=”cwj”
StringsCity=”Shanghai”
资源定义为
Mynameis%1$s,Iamform%2$s
则Java中只需求StringsInfoFormat=getResources().getString(R.string.alert2);
StringsFinalInfo=String.format(sInfoFormat,sName,sCity);
我们看到了整个,整个定义相似MFC的CString::Format或MacOS中的NSLog,但是需求显现相似C#中那样显现的标
出参数的数字,比方%1或%n,这里数字代表参数的第n个。
本行最终sFinalInfo显现的内容为Mynameiscwj,IamformShanghai。
当然了你有什么不懂的中央能够来函至android123@163.com

1、IT大王遵守相关法律法规,由于本站资源全部来源于网络程序/投稿,故资源量太大无法一一准确核实资源侵权的真实性;
2、出于传递信息之目的,故IT大王可能会误刊发损害或影响您的合法权益,请您积极与我们联系处理(所有内容不代表本站观点与立场);
3、因时间、精力有限,我们无法一一核实每一条消息的真实性,但我们会在发布之前尽最大努力来核实这些信息;
4、无论出于何种目的要求本站删除内容,您均需要提供根据国家版权局发布的示范格式
《要求删除或断开链接侵权网络内容的通知》:https://itdw.cn/ziliao/sfgs.pdf,
国家知识产权局《要求删除或断开链接侵权网络内容的通知》填写说明: http://www.ncac.gov.cn/chinacopyright/contents/12227/342400.shtml
未按照国家知识产权局格式通知一律不予处理;请按照此通知格式填写发至本站的邮箱 wl6@163.com