Android 文本动态处理方法,TextView的部分文字动态赋值

场景是这样的有一行文字,我只需要给TextView文字中间的一个数值动态赋值,
样子看下图:
在这里插入图片描述
解决方案是用到了占位符
在我们app开发的过程中我们有时候会遇到,一个TextView里面会遇到会有一个一大串固定的文字,而里面的数字或者个别字需要根据后台的接口而展示的。

    这个时候我们最简单的方法就是在string.xml文件里 使用 %s、%1$s、%d、%1$d,而在页面展示的时候我们只需要将真实展示的文字或者数据替换掉这些占位符就OK啦!

1.%1 s 表示替换的为 S t r i n g 类型 ∗ ∗ 2. ∗ ∗ s表示替换的为String类型** 2.**%1 s表示替换的为String类型2.d表示替换的为int类型
注:数字表示替换字符串中要替换的位置,若一个字符串要替换两个int类型,在替换位置分别 写%1 d 和 d和%2 dd.

%s 、%d为缩写方式,只替换一个位置,可以这么写

替换方式

例一:
1.在strings.xml中定义

    <string name="tips">确定要删除亲友%s吗?</string>

2.在类中调用

    String.format(mActivity.getResources().getString(R.string.tips),"小新"))

输出结果就会拼接上。

输出结果:确定要删除亲友‘小新吗?

例二:
1.在strings.xml中定义

    <string name="tips">该西瓜近期的价格为%d元。</string>

2.在类中调用

    String.format(mActivity.getResources().getString(R.string.tips),10))

输出结果就会拼接上。

输出结果:该西瓜票近期的价格为10元。

例三:
1.在strings.xml中定义

    我叫%1$s,我%2$s贼溜,我能吃%3$d个包子,不信可以%4$s买给我吃!

2.在类中调用

    String.format(mActivity.getResources().getString(R.string.tips),"小新“,”吃饭“,12,”晚上“))

输出结果就会拼接上。

输出结果:我叫小新,我吃饭贼溜,我能吃%3$d个包子,不信可以晚上买给我吃!

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值