Android在getString()中添加参数

2018-01-29 22:52:41

 Android中String一般都是定义在res/string.xml中,这样在程序中使用R.String.name就可以使用这个字符串了。但是想让这些定义的字符串能够灵活地根据参数来改变要怎么样才能实现呢?

    实现起来其实很简单,在定义字符串的时候按照这样的格式来:
    %1$sTEST%2$s
    %x代表的是第几个参数,这里有两个参数,当然后面还可以加很多参数。$s代表的是参数的类型,使用的时候参数一定要与这里定义的相符,否则会出错。

    使用的时候要这样使用:  String s=this.getString(R.string.hello);
                                             s=String.format(s, "a","b");
    这样s的内容就会是aTESTb.

    如果对string的定义是这样的:
      %2$sTEST%1$s
   
    s的内容将会是bTESTa

  • 2020-11-08 08:31:51

    meteor在不同端口启动服务

    当没有任何参数时,run是默认行为,在幕后,它3000端口开启node.js服务器实例,同时开启监听3001端口的MongoDB服务

  • 2020-11-11 15:05:39

    nuxt如何在其它js文件中使用store

    在新建的js文件中想用store里面的数据,比如token想在封装的axios里面,请求头里面去使用,亦或者通过app的JS接口获取token并存储在store里面。我们都知道如何在vue中如何使用。

  • 2020-11-12 14:01:46

    使用postMessage来实现父子通信跨域

    1.子向父,子postMessage,父监听message; 2.父向子,父postMessage,子监听message; 3.测试发现,子向父postMessage的时候,源可以写为‘*’,父向子postMessage的时候,源需要写成子的源,(也就是子页面的协议+主机号+端口) 测试代码部分:

  • 2020-11-12 14:24:39

    Object.entries()

    Object.entries()方法返回一个给定对象自身可枚举属性的键值对数组,其排列与使用 for...in 循环遍历该对象时返回的顺序一致(区别在于 for-in 循环还会枚举原型链中的属性)