【问题标题】:android string-array items with names带有名称的android字符串数组项
【发布时间】:2018-06-04 12:15:43
【问题描述】:

我在资源文件中有一个字符串数组,该数组中有一些项目。我知道如何按名称调用数组。我想要的是能够通过名称调用数组项。资源文件允许我为项目命名为“项目 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>

【问题讨论】:

标签: java android arrays


【解决方案1】:

您可以使用哈希,因此您可以设置键和值,请参阅this 上的更多信息

【讨论】:

    【解决方案2】:

    没有这样的资源类型。您必须将任意文件放入 res/raw/ 并在 HashMap 中手动导入。

    张贴在这里here

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

    【讨论】:

      【解决方案3】:

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

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

      来自the documentation

      <item>
      

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

      没有属性。

      【讨论】:

        猜你喜欢
        • 2023-03-26
        • 1970-01-01
        • 2019-09-23
        • 1970-01-01
        • 2014-04-05
        • 2017-02-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多