AndroidStudio笔记(7)字符串格式 有更新!

  aohanyao

引言

本篇记录一些其他的技巧:字符串的格式化、占位符的使用

字符串格式化

我们先看看下面这个例子:

你好,我的名字是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"));

看看效果:

效果

最后

源码