在哪里加载适配器的数据?在活动?还是在适配器?

时间:2012-06-28 07:04:58

标签: android android-listview android-adapter

对于List视图,您必须具有适配器。要填写列表项,您需要数据。现在问题是:

  1. 这是一个在自定义适配器中下载数据的好主意吗?
  2. 或更好的是在活动中下载数据&把它传递给适配器?
  3. 或者他们有更好的方法来实现这个目标吗?

3 个答案:

答案 0 :(得分:4)

看起来只有一个问题有三个选项

is this a good idea to download the data in custom adapter or better is download data in activity & pass it to adapter  their is any better way to achieve that ?

创建AsyncTask from Activityset the data to adapter from onPostExecution回调函数

一个好的教程link1

2- Load ListView in background AsyncTask

答案 1 :(得分:0)

您可以在任何活动类下载,然后通过广播发送数据,编辑您的适配器,最后通过调用更新适配器,即:

adapter.notifyDataSetChanged();

答案 2 :(得分:0)

我对这个问题有了更好的答案:

  • 活动中准备数据,然后将其发送到适配器。它可能是通过AsyncTaskSQLite或其他内容下载数据。
  • 在您的适配器中,通过AsyncTaskSQLite或其他内容加载数据。

但更好的选择是在Activity&中加载数据。在适配器中使用它。它将帮助您使您的代码更清洁&它将为您提供更大的灵活性来管理您的数据。但在某些情况下,您可以考虑在Adapter中准备数据;如果您在“活动”中加载它有困难。

两者都很好,你可以考虑它。