如何从 res/integers.xml 获取整数值?
Posted
技术标签:
【中文标题】如何从 res/integers.xml 获取整数值?【英文标题】:How to get Integer value from res/integers.xml? 【发布时间】:2013-10-30 18:58:42 【问题描述】:以下是我的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 个变量。
那么如何访问我在integers.xml
文件中声明的变量?
【问题讨论】:
【参考方案1】:应该这样做:
Resources res = getResources();
int i= res.getInteger(R.integer.int_value);
其中 int_value 是您的 xml 中给出的变量名
【讨论】:
清理项目并检查类中的导入,您可能已经获得了 android.R 属性。您需要更改您的包属性 是的,这是错误导入 R.java 的错误,为您的努力+1【参考方案2】:您正在查看 android.R.integer
而不是 your.namespace.R.integer
。
Eclipse 可能导入了错误的;它有时会这样做,这很烦人。
转到文件顶部的导入并删除:
import android.R;
那么您应该能够使用快速修复来添加正确的导入。
【讨论】:
【参考方案3】:在访问这些文件之前,您可能必须清理您的项目一次。我就是这样做的,它总是有效的。
Resources r = getResources();
int i = r.getInteger(R.integer.<variable_name>)
尝试清理您的项目并重新启动 Eclipse,因为这是正确的做法。
【讨论】:
尝试更改一些布局文件然后清理你的项目,我检查了两次它在这里工作! 我已经尝试过这些东西,但是导入正确的 R.java 文件是个问题,现在已经解决了。亲爱的,为您的努力 +1。 资源不是资源【参考方案4】:简单代码:
int maximum = getContext().getResources().getInteger(R.integer.maximum);
【讨论】:
以上是关于如何从 res/integers.xml 获取整数值?的主要内容,如果未能解决你的问题,请参考以下文章