Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/229.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 是否使用字符串变量从xml返回getString?_Java_Android_Xml - Fatal编程技术网

Java 是否使用字符串变量从xml返回getString?

Java 是否使用字符串变量从xml返回getString?,java,android,xml,Java,Android,Xml,我是编程新手,我正在尝试使用Android Studio创建一个Android应用程序。我尝试过搜索,但我的发现似乎不是我想要的,因为它们似乎过于复杂。我下面写的只是一个例子 我希望能够在用户键入“whale”时从string.xml返回字符串。本例中的字符串是关于鲸鱼的信息 这是我的java文件,animal已经是从表单中输入的字符串 TextView TextView=新的TextView(此); 字符串animalType=“水”+动物;//如果用户键入whale,则此项将成为water_

我是编程新手,我正在尝试使用Android Studio创建一个Android应用程序。我尝试过搜索,但我的发现似乎不是我想要的,因为它们似乎过于复杂。我下面写的只是一个例子

我希望能够在用户键入“whale”时从string.xml返回字符串。本例中的字符串是关于鲸鱼的信息

这是我的java文件,animal已经是从表单中输入的字符串

TextView TextView=新的TextView(此);
字符串animalType=“水”+动物;//如果用户键入whale,则此项将成为water_whale
String animalInfo=getString(R.String.animalType);//这不管用
textView.setText(animalInfo);
这是我的string.xml

鱼是一种小动物。。。
鲸鱼是一种无毒的动物。。。
非洲。

我可能已经用这种特殊的方法挖过隧道,我可能错过了一些明显的东西,或者有其他方法可以做到这一点吗?

R.string。anyIdentifer
表示一个整数值。您不能用它添加自己的标识符,就像您不能在任何类上调用任何不存在的属性一样。如果您想使用任何资源的名称动态访问该资源,那么有一种不同的方法

用这个

TextView textview = new TextView(this);
String animalType = "water_" + animal; 
int animalTypeId = getResources().getIdentifier(animalType, "string", getActivity().getPackageName())
String animalInfo = getResources().getString(animalTypeId);
textView.setText(animalInfo);

String-String=getResources().getString(R.String.water\u-whale)


您不能直接使用
getString()
方法。

它起作用了,但是我没有使用
getActivity().getPackageName()
,因为它给了我错误,但是当只使用
getPackageName()
时,我得到了我想要的结果。