从我的asynctask调用方法必须是静态的

时间:2011-10-28 14:48:04

标签: android

我不知道为什么会这样,但是我不能在我的asynctask中调用一个非静态的方法。

 protected void onPostExecute(String result) {

        List<SingleEvent> thelist = PhotosActivity.parseJSONResponse(result);


        PhotosActivity.refreshListView(thelist);




    }

我的活动中的方法:

public void refreshListView(List<SingleEvent> theList){//method that adds the List to the ListView after asyncTask is finished.

         SingleEventAdapter adapter = new SingleEventAdapter(this, theList);

         this.list.setAdapter(adapter);
         adapter.notifyDataSetChanged();

    }

它说我应该将我的方法设为静态,但这样做会导致内部代码出错,说它不能与静态一起使用。

编辑:

以下是我的asynctask类:

public class CallWebServiceTask extends AsyncTask<String, Object, String> {}

它不是静止的吗?

1 个答案:

答案 0 :(得分:2)

您必须这样做(确保您的AsyncTask课程不是静态的):

PhotosActivity.this.refreshListView(thelist);