Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/216.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法在Java(Android)中引用XML字符串资源_Android_Xml_String_Reference - Fatal编程技术网

无法在Java(Android)中引用XML字符串资源

无法在Java(Android)中引用XML字符串资源,android,xml,string,reference,Android,Xml,String,Reference,我一辈子都搞不懂为什么这不管用。我试图在Java代码中引用strings.xml文件中的字符串。出于某种原因,我可以引用同一xml文件中的每个字符串,但需要引用的两个字符串除外。我不知道我是否说得很清楚,但下面是我当前的代码,这样我可以更好地展示这一点: MainActivity.java strings.xml 这是行不通的。XML文件中的所有其他字符串都可以在Java文件中引用,最后两个除外,即问候语和再见语。任何帮助都将不胜感激!!提前谢谢 您的项目是否包含错误,因此无法生成该项目并且无法

我一辈子都搞不懂为什么这不管用。我试图在Java代码中引用strings.xml文件中的字符串。出于某种原因,我可以引用同一xml文件中的每个字符串,但需要引用的两个字符串除外。我不知道我是否说得很清楚,但下面是我当前的代码,这样我可以更好地展示这一点:

MainActivity.java

strings.xml

这是行不通的。XML文件中的所有其他字符串都可以在Java文件中引用,最后两个除外,即问候语和再见语。任何帮助都将不胜感激!!提前谢谢

您的项目是否包含错误,因此无法生成该项目并且无法重新生成R? 确保不同地区/分辨率的其他strings.xml也包含R.string.greeting\u toast。 清理并重建项目
我不知道它在你的IDE上是如何工作的,但是我的Android Studio显示了一些错误

删除此行:

Toast greeting;
你必须得到你的上下文,因为在你的代码上下文是空的,我猜

然后你必须,通过添加来展示你的祝酒词

Context context = getApplicationContext();
CharSequence text = getString(R.string.greeting_toast);
int duration = Toast.LENGTH_SHORT;

Toast.makeText(context, text, duration).show();'
您也可以将其缩短为一行,如下所示:

Toast.makeText(getApplicationContext(), R.string.greeting_toast, Toast.LENGTH_SHORT).show();

你能检查一下你是否已经在你的代码中导入了正确的R文件吗?你还没有初始化上下文变量。谢谢你,简单地清理项目就可以消除错误,就像Mij说的,你的上下文是空的。它应该根据他的变化而工作。
Toast greeting;
Context context = getApplicationContext();
CharSequence text = getString(R.string.greeting_toast);
int duration = Toast.LENGTH_SHORT;

Toast.makeText(context, text, duration).show();'
Toast.makeText(getApplicationContext(), R.string.greeting_toast, Toast.LENGTH_SHORT).show();