【问题标题】:Android: Is there a way to get the name value of a defined String-Array programatically?Android:有没有办法以编程方式获取已定义字符串数组的名称值?
【发布时间】:2012-09-28 15:12:34
【问题描述】:

我有一个 arrays.xml 文件,其中包含很多字符串数组元素,可在我的应用程序中与 Spinners 一起使用。我需要通过 Web 服务调用为每个选择发送一个特定的值。 Web 服务获取描述所代表的数据库值,而不是描述本身,所以我这样设置字符串数组:

<string-array name="collection_method">
    <item name="blank"></item>
    <item name="P">Prepaid</item>
    <item name="C">Collect</item>
    <item name="T">Third Party</item>
    <item name="D">Cash On Delivery</item>
</string-array>

我的问题是:有没有办法以编程方式获取字符串数组元素的名称值?

【问题讨论】:

  • 参见参考资料文档。如果这没有回答,我不明白你的问题

标签: android android-xml arrays


【解决方案1】:

如果我使用 Spinner 理解正确,您可以绑定 2 个数组,一个用于条目,一个用于值,这个类似的问题描述了这种方法及其替代方法:

Android - configure Spinner to use array

编辑:再次查看链接的问题是不对的,但您仍然可以使用双数组,您只需获取微调器的选定索引并使用以下命令查找另一个数组中的值:-

String value = getResources().getStringArray(R.id.value_array)[selectedIndex];

【讨论】:

  • 这可行,谢谢。我会将其标记为已接受的答案。当已经有一个与数组的每个元素关联的值时,拥有多个数组似乎有点混乱。那好吧。谢谢!
  • 链接问题中的示例实际上不起作用,因为 entryValues 不是微调器的属性,但是您可以使用所选索引在其他数组资源中查找值
  • 更新了我的答案以包含更具体的解决方案,希望对您有所帮助!
  • 我选择了拥有 2 个数组并使用索引从第二个数组中获取值。看起来这会很好用。好想法!再次感谢。
  • 你知道是否有办法通过名称获取字符串数组项,而不仅仅是索引?
猜你喜欢
  • 2023-04-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-10-17
  • 2014-06-14
相关资源
最近更新 更多