android:自己的类扩展活动和/或listactivity

时间:2011-04-03 19:34:25

标签: java android class android-activity listactivity

在我的整个应用程序中,我的所有活动中都有一些相同的内容,例如:一个optionsmenu和一些需要在onresume,onrestart和onpause上运行的代码。我认为将它们放入我的类中是一种聪明的方法MyListActivity扩展了ListActivity,然后我的所有活动都扩展了MyListActivity。

这很好,直到我创建了一个没有ListView的活动。应用程序崩溃,因为ListActivity需要ListView。但是,这个新活动不需要ListView,但仍需要MyListActivity中的所有函数/覆盖。

现在我可以想到两个解决方案。一:在布局中添加一个虚拟列表视图,其中visibility = false,height& width = 0(没试过这个,但我想它应该有用)。第二步:将MyListActivity类的内容复制/粘贴到MyActivity扩展的Activity类中。我觉得这样做很傻,但我对如何解决这个问题没有任何其他想法。

关于如何处理这个更好的想法?

由于

1 个答案:

答案 0 :(得分:0)

我认为您可以实现Activity子类中的所有功能(例如MyActivity),并使MyListActivity类成为MyActivity类的子类。

其他方法是创建一个辅助类,其中包含静态方法中的所有功能,并以Activity对象作为第一个参数。在这种情况下,您不需要创建MyActivityMyListActivity类,但是您需要在要继承这些功能的每个Activity子类中调用辅助类的方法。