gpt4 book ai didi

java - 从 Android 程序中的 xml 资源中获取整数数组

转载 作者:IT老高 更新时间:2023-10-28 20:37:03 26 4
gpt4 key购买 nike

只是匆匆忙忙,

我在 res/values/integers.xml 中有一个 xml 资源

<?xml version="1.0" encoding="utf-8"?>
<resources>
<integer-array name="UserBases">
<item>2</item>
<item>8</item>
<item>10</item>
<item>16</item>
</integer-array>
</resources>

我尝试了几种方法来访问它:

int[] bases = R.array.UserBases;

这只是返回和 int 引用 UserBases 而不是数组本身

int[] bases = Resources.getSystem().getIntArray(R.array.UserBases);

这会向我抛出一个异常,告诉我 int 引用 R.array.UserBases 没有指向任何内容

访问该数组的最佳方式是什么,将其推送到一个不错的基本类型 int[] 中,然后可能将任何修改推送回 xml 资源中。

我检查了 android 文档,但没有发现任何非常有成效的东西。

最佳答案

需要使用Resources来获取int数组;但是,您正在使用系统资源,其中仅包括标准 Android 资源(例如,可通过 android.R.array.* 访问的资源)。要获取您自己的资源,您需要通过您的上下文之一访问资源。

例如,所有的 Activity 都是上下文,所以在一个 Activity 中你可以这样做:

Resources r = getResources();
int[] bases = r.getIntArray(R.array.UserBases);

这就是为什么传递上下文通常很有用;您将需要它来获取应用程序的资源。

关于java - 从 Android 程序中的 xml 资源中获取整数数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2064595/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com