public SimpleAsyncTask(JSONObject obj, Activity activity) {
this.obj = obj;
this.activity = activity;
}
@Override
protected String doInBackground(String...params) {
String result = "";
return result;
}
@Override
protected void onPostExecute(String result) {
List<Appointments> lists = new ArrayList<Appointments>();
return lists;
}
@Override
protected void onPreExecute() {
}
我从 MainUI 线程调用我的 AsyncTask 线程。我有一个带有 listView 的 fragment 类,我如何将 List 传递给我的 Fragment 类。
ArrayAdapter < String > adapter = new ArrayAdapter < String > (getActivity(),
android.R.layout.simple_list_item_1, listObject);
setListAdapter(adapter);
最佳答案
只需将列表变量设置为 Fragment 类的成员,而不是限制在 AsyncTask 内
像这样:
public class MyFragment extends Fragment {
private List<Appointments> lists = new ArrayList<Appointments>();
......
然后在您的 AsyncTask 中,按如下方式使用它:
@Override
protected void onPostExecute(String result) {
// Not instantiating it from scratch, but using the class variable
lists = new ArrayList<Appointments>();
return lists;
}
关于java - 将对象从异步线程传递到 fragment 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15729528/