我有关于android活动和androidmanifest.xml的这个问题。当我使用Java Servlet时出现了问题,并希望创建“基于模块的”或类似于基于插件的服务器的内容。这是正常工作,我可以使用类似于这个的代码方法动态加载我想要的servlets:动态地将servlet添加到servletconfig 。服务器在服务器启动期间动态地找到并映射。

这里的问题不是如何找到适当的活动,或者如何创建其中的新实例,或者如何启动它们,这是我弄清楚的那部分。我可以遍历我的包并找到相应的活动类,创建它们的新实例并将其添加到列表中。

我一直在使用所有活动必须实现的世代odicetagcode,以便成为有效的活动。这样,我可以为我的应用程序创建新的零件,范围或新功能,一切都是有效的。在我的应用程序中,我有一个按钮列表,用户可以单击,通过将它们添加到我的视图来生成按钮列表,使用interface生成。

private void displayLoadedContent() {
    View v = inflateLayout(R.layout.buttonlayout);
    ListView view = (ListView) v.findViewById(R.id.list);
    view.setAdapter(new ListButtonAdapter(this, content));
}
.

ListView声明为

List<MyActivityInterface> content;
.

content扩展了生成的。

所以没有问题。问题是我必须在androidmanifest.xml中声明我的每个活动。该文件就像显示的可能性的大清单,以及杂乱的类型,所以我不会在这里展示代码。

我意识到我必须将一个活动添加到清单,但我希望一项活动应该足够。我的方法可以在许多方面被视为前控制器模式,其中每个活动都是负责装载并显示所需的效率。

我只是询问它是否可以在清单中动态注册者活动(或允许它们以另一种方式运行),如果否,则有任何其他有效的解决方案吗?

有帮助吗?

解决方案

Android要求提前在AndroidManifest.xml文件中注册每个活动。部署后,您的应用程序将作为.apk文件的设备一起生活,该文件无法修改(除了更新/替换为新的APK)。

如果我理解问题正确,你根本就不得不在清单文件中列出大量活动?片段不需要在清单文件中注册,因此如果您的目标是动态交换UI组件,即答案。通过支持库

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top