简介

在Android项目中的res/values中有一个strings的xml文件,官方推荐将项目中所有的字符串和字符串数组放到该文件中,方便维护和复用,本篇文章用于记录如何配置和使用该资源文件。

创建字符串/字符串数组

创建字符串

在values/strings.xml中的resources项中添加一行如下代码

    <string name="test">这是字符串test的值</string>

这样就创建好一个字符串了

创建字符串数组

    <string-array name="testArray">
        <item>字符串1</item>
        <item>字符串2</item>
        <item>字符串3</item>
        <item>字符串4</item>
        <item>字符串5</item>
    </string-array>

调用资源文件中的字符串和字符串数组

在其他xml文件中调用字符串

当我们在其他xml文件中,如layout布局文件或者AndroidManifest.xml文件中调用这些字符串时,可以使用如下方法调用。

调用字符串

示例:

使用@string/字符串名称来调用

如下图中的@string/app_namestrings.xml文件中的定义为:

image-20220708103821654

那么这里的lable就等价于上面定义的值,即CustomScienceCalculator

image-20220708103634145

调用字符串数组

xml中调用字符串数组有些困难,具体可以参考这个问答:https://stackoverflow.com/questions/4161256/referencing-a-string-in-a-string-array-resource-with-xml

在Java代码中调用

调用字符串

在Java代码中可以通过getResources()getStrign()方法调用srings资源文件中的字符串

#调用方法
String str = getResources().getString(R.string.字符串名称);
#示例调用Android中的test方法
String str = getResources().getString(R.string.test);

调用字符串数组

在Java代码中可以通过getResources()getArray()方法调用strings资源文件字符串数组

String[] str = getResources().getStringArray(R.array.字符串数组名称);

Q.E.D.