如何从res / integers.xml获取Integer值?

时间:2013-10-22 04:14:46

标签: android xml integer

以下是我的integers.xml文件,

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <integer name="LOCATION_ALARM_INTERVAL">60000</integer>
    <integer name="MID_NIGHT_ALARM_INTERVAL">86400000</integer>
</resources>

如果是strings.xml,我可以拥有如下所示的访问变量,

getString( R.string.<variable_name> );

但是如何从integeres.xml文件获取值呢?

当我写getResources().getInteger(R.integer.时,它显示了我尚未声明的3个变量。

  

enter image description here

那么如何访问我在integers.xml文件中声明的变量?

4 个答案:

答案 0 :(得分:25)

应该这样做:

Resources res = getResources();
int i= res.getInteger(R.integer.int_value);

其中int_value是xml

中给出的变量名

答案 1 :(得分:11)

您正在查看android.R.integer而不是your.namespace.R.integer

Eclipse可能导入错误的一个;它有时会这样做,它很烦人。

转到文件顶部的导入并删除: import android.R;

然后您应该能够使用快速修复来添加正确的导入。

答案 2 :(得分:6)

在访问这些文件之前,您可能需要清理一次项目。我这样做,它总是有效。

Resources r = getResources();
int i = r.getInteger(R.integer.<variable_name>)

尝试清理项目并重启Eclipse,因为这是正确的方法。

答案 3 :(得分:4)

简单代码:

int maximum = getContext().getResources().getInteger(R.integer.maximum);