我目前正在为API构建应用。每当我想从API收集对象列表时,以下生命周期都适用:
活动是从相同的组件构建的:ArrayAdapter,ProgressBar,异步任务等。唯一可能不同的是当我点击列表中的对象时调用的活动,因为对象有时会有所不同属性,我想用不同的风格显示它们。
现在我想知道:是否可以制作通用活动存储库?比如...
public ActivityStore<T> extends ListActivity {
...
}
我只传递API路径和反序列化对象的引用类型?
答案 0 :(得分:1)
谁会打电话给ActivityStore<Dog>
?你的清单?
不,你不能这样做。
但是,如果你有类似DogStoreActivity extends ActivityStore<Dog>
的东西,那么定义像这样的活动就完全没问题了。
答案 1 :(得分:-1)
您可以只使用列表视图保留一个活动,为不同类型的数据保留不同的适配器。
创建一个AsyncTask
以从服务器获取数据并将适当的适配器设置为ListView
。
您还可以创建一个所有其他活动扩展的基本活动,并将您的公共代码放在那里。