Android - 在代码中动态命名资源

标签 android string layout android-intent resources

简单地说,我正在尝试重用我的适配器和 Activity 类。当我调用 Intent 来打开我的 Activity 时,我将要扩展的 Layout 的名称作为 StringExtra 传递,如下所示:

i.putExtra("layout_name", "layout_a");

然后在我的 Activity 中我获得额外的:

Intent i = getIntent();
String layout_name = i.getStringExtra("layout_name");

现在我想以这种格式使用它:

setContentView(R.layout. + layout_name); 

这样的事情可能吗?正确的语法是什么?

最佳答案

有点像,

int layoutID = getResources().getIdentifier("layout_name" , "layout", getPackageName());
setContentView(layoutID); 

关于Android - 在代码中动态命名资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18184335/

相关文章:

android - MAT (Eclipse Memory Analyzer) - 如何从堆转储中获取位图尺寸

python - 两个数据帧的按列串联

c# - .net C# 中不安全正常吗?

c++ - 是什么让 Qt 小部件及其布局正确运行(就其大小而言)?

android - 总是在顶部布局不起作用

android - 创建或解析Java和Kotlin分类成Gradle任务

java - Android M 权限 : onRequestPermissionsResult() not being called

java - 应用程序从 URL 检索图像并在 Android 应用程序中显示时崩溃

Ruby - 从另一个方法中提取我的较小方法(将字符串转换为两个数字和一个符号)

Android - 如何定位 4 个 TextView ?