扩展Android活动的设计模式?

时间:2010-04-28 21:34:06

标签: android design-patterns

在Android上进行编程时,我最终编写了一个由其他几个人扩展的父活动。有点像ListActivity。我的父活动扩展了Activity。如果我打算使用MapList,我不能将我的父活动用作超类 - 子活动显然只能扩展一个活动。因此,我最终使用ActivityListActivityMapActivity等相同逻辑编写我的父活动。

我在寻找的是某种特性功能/设计模式,在这种情况下会有所帮助。有什么建议吗?

3 个答案:

答案 0 :(得分:3)

我真的不喜欢ListActivityMapActivity等等。基本上,它们只是以一些灵活性为代价添加单个视图元素的活动。通过适当地向您的XML添加MapViewListView,您最终可以直接扩展Activity派生的超类。因此,大多数情况下不要使用任何SomethingActivity类。

答案 1 :(得分:1)

我最终拥有一个基础MyAbstractActivity extends Activity,其中包含共享逻辑和模仿MyAbstractListActivity extends MyAbstractActivity的{​​{1}}(ListActivitylayout.R.id.list等。那里没什么了。)

答案 2 :(得分:1)

我正在使用具有所有共享功能的delegate。这使我能够将所有共享功能集中在一个单独的类中,用于所有不同的活动 我的所有活动都会扩展其特殊活动,然后实现一个通用接口。这种方法的问题是我需要实现接口中定义的所有方法,并在委托对象中调用匹配方法。此代码目前相当于30行重复的代码,我认为这不是一个问题。