dialogfragment 中的异步任务

Async task in dialogfragment

在 activity 中,执​​行 AsyncTask 所需要做的就是 新的 MyAsyncTas().execute 但它在我的 DialogFragment 中不起作用我想知道如何提前在 DialogFragment.Thanks 中实现这一点。

只需创建一个新任务并执行它:

new AsyncTask<Void, Void, Void>() {
  @Override
  protected Void doInBackground(Void... none) {
      ...
      return null;
  }

  @Override
  protected void onPostExecute(Void none) {
      ...
  }
}.execute();

上面的代码嵌入在 createDialog():

@Override
protected Dialog onCreateDialog(int id) {
  switch (id) {
    case 1:
      Dialog dialog = new AlertDialog.Builder(MyActivity.this)
        .setTitle("Title")
        .setMessage("Message")
        .setPositiveButton("Execute", new DialogInterface.OnClickListener() {
          @Override
          public void onClick(DialogInterface dialog, int whichButton) {
            new AsyncTask<Void, Void, Void>() {
                // code above ....
            }
          }
          ...