android - 从 strings.xml 调用的问题

标签 android string

我在从 Android 中的 strings.xml 资源调用字符串值时遇到问题。 strings.xml 文件如下:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="name1">contact_name1</string>
    <string name="phone1">contact_phone1</string>
</resources>

调用字符串值的代码是:

private final String NAME1  = getString(R.string.name1);
private final String PHONE1 = getString(R.string.phone1);

我正在从我的 main.java 调用字符串,其中我是 extend Activity ,所以我有上下文。问题是,当我运行应用程序(物理设备(EVO)或模拟器(API 级别 5 - 8)时,我在第一个 NullPointerException 调用所在的行得到一个 getString()。我已经阅读了 Google 的文档,许多在此处和 AndDev.org 上发布,最终结果没有任何变化。在我拔出所有头发之前,有人能告诉我哪里出了问题吗?strings.xml 文件位于标准位置(<project_folder><res><values> 目录),与应用程序的其余部分。

最佳答案

您不能从实际上是 Activity 的构造函数的内容调用 getString,因为上下文不存在。您需要删除 final 关键字并在 onCreate() 中分配成员变量。

关于android - 从 strings.xml 调用的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5038951/

相关文章:

c++ - 遍历字符串数组中的字符?

android - 从真实对象创建 3D 模型以在 Android 中与 openGL 一起使用

android - 在 Android 中每次使用 FFmpegFrameGrabber.grabImage() 获取相同的帧

android - 使用 Intents 选择保存文件位置

string - 拆分文本列

php - 如何在不替换 PHP 中的任何内容的情况下插入文本

Android - 页面顶部的操作栏和页面底部的选项卡

android - WebView 在 onPause 后不显示内容

python - 我需要确保列表中只有某些字符?

c++ - 试图阻止银行程序在选择交易后结束。 C++