名称为

时间:2017-12-21 19:16:07

标签: java android arrays

我在资源文件中有一个字符串数组,数组中有几个项目。我知道如何按名称调用数组。我想要的是能够通过名称调用数组项。资源文件允许我为项目命名'项目1.如何在我的Java类中使用给定名称调用此项目

String[]array = getResources().getStringArray(R.array.myarray);
String item1 = array["item1"];
String item2 = array["item2"];
String item3 = array["item3"];

在资源中,数组看起来像

<string-array name="myarray">
    <item name="item1">item 1</item>
    <item name="item2">item 2</item>
    <item name="item3">item </item>
 </string-array>

3 个答案:

答案 0 :(得分:0)

您可以使用哈希,因此您可以设置密钥和值,详见this

答案 1 :(得分:0)

  

没有这样的资源类型。你必须在res / raw /中放置一个任意文件,然后在HashMap中手动导入它。

发表在此here

要使用原始InputStream打开这些资源,请使用更多here getResources().openRawResource(R.raw.filename)

答案 2 :(得分:0)

  

我想要的是能够通过名称调用数组项。资源文件允许我为项目命名为'item 1。

Android Studio可能允许您使用name属性,但<string-array>资源中的项目不支持此属性。

来自the documentation

<item>
     

一个字符串,可以包含样式标记。该值可以是对另一个字符串资源的引用。必须是<string-array>元素的子元素。请注意,您必须转义撇号和引号。有关正确设置字符串样式和格式的信息,请参阅下面的格式和样式。

     

没有属性。