0

我在我的应用程序中使用 customListAdapter(扩展 BaseAdapter)。我在 ListFragment 中使用了这个适配器。

对于原型设计,我在字符串数组中硬编码了一些值,并使用这些值来填充列表。我正在覆盖 getView 并在充气后返回视图。

现在我需要从我的 web 服务调用中获取一些数据,我打算在 AsyncTask 中执行这些数据。

推荐的方法是什么?

当前代码(伪)

public class customListAdapter extends BaseAdapter {

  @Override
  public View getView(int position, View MyconvertView, ViewGroup parent) {

    // Inflating view 
    // Other view operations
    return MyconvertView;
  }

  class SomeTask extends AsyncTask<params,progress ,Result > {

  @Override
  protected View doInBackground(... params) {
  }


  @Override
        protected void onPostExecute(View result) {

        }
  }
 }
}

需要修改:

选项1:

  @Override
  public View getView(int position, View MyconvertView, ViewGroup parent) {

    // Inflating view 
    // Other view operations

    return new SomeTask.execute(); // should return the view , the onPostExecute of SomeTask should return this. 
  }

选项 2:

请建议。

4

1 回答 1

1

在异步任务的 PostExecute 方法中,调用方法

list.setAdapter(data);

因此,当您获取所有数据时,它将被设置在列表中..

于 2013-08-20T11:52:58.210 回答