Java 使用setContentView()通过传递一个;“字符串”;进入它的参数?

Java 使用setContentView()通过传递一个;“字符串”;进入它的参数?,java,android,android-layout,Java,Android,Android Layout,类似于 String string1 = "R.layout.main"; setContentView(string1); 我该怎么做呢?还是他们的做法类似?还是我做错事了? 提前感谢。您应该使用该方法 setContentView(getResources().getIdentifier("main","layout","applicationpackage")); 你应该使用这个方法 setContentView(getResources().getIdentifier("main",

类似于

String string1 = "R.layout.main";
setContentView(string1);
我该怎么做呢?还是他们的做法类似?还是我做错事了?


提前感谢。

您应该使用该方法

setContentView(getResources().getIdentifier("main","layout","applicationpackage"));

你应该使用这个方法

setContentView(getResources().getIdentifier("main","layout","applicationpackage"));
试试这个


尝试此操作

使用此代码获取字符串到id(int)值


使用此代码获取字符串到id(int)值

尝试以下方法:

getString(this.getResources().getIdentifier(“stringYouWantToConvertInInteger”,“string”,getPackageName())

尝试以下方法:

getString(this.getResources().getIdentifier(“stringYouWantToConvertInInteger”,“string”,getPackageName())

试试这个

int id = getResources().getIdentifier("main", "layout", "package");
setContentView(id)  // Whatever you may give to view..
试试这个

int id = getResources().getIdentifier("main", "layout", "package");
setContentView(id)  // Whatever you may give to view..
并不是说下面所有答案中提到的getResources().getIdentifier()方法在混淆代码时“可能”不起作用。也不是说下面所有答案中提到的getResources().getIdentifier()方法在混淆代码时“可能”不起作用。