引言
本篇记录一些其他的技巧:字符串的格式化、占位符的使用
字符串格式化
我们先看看下面这个例子:
你好,我的名字是aohanyao,今年26岁,我的邮箱是aohanyao@gmail.com,以下是浮点数:1234.00
而我们的需求是名字、年龄和邮箱是需要动态替换的,大多数人实现的方式如下:
String mIntroduction="你好,我的名字是"+name+",今年"+age+"岁,我的邮箱是"+email
咋看上去好像没什么毛病,但实际上这并不是一个好的做法,这样等同于把字符串硬编码到代码中了,可扩展性和维护性变得极差,而我们应该使用string resource来进行引用。
开始编码
首先在string.xml中创建相应的字符串资源如下:
<string name="introduction">你好,我的名字是%s,今年%d岁,我的邮箱是%s。</string>
- %d (表示整数)
- %s (表示字符串)
- %f (表示浮点数)
在代码中进行引用:
TextView tv_introduction = findViewById(R.id.tv_introduction);
tv_introduction.setText(getResources().getString(R.string.introduction,
"aohanyao", 26, "aohanyao@gmail.com"));
看看效果:
效果
网友评论