2

ProgressDialogwhenを起動したいのですonPreExecute()が、動作しません。

Homeactivity.java

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    //switch condtion...
    case R.id.buttontime :                
        new FlightListTask().execute("");
        break:  

}

public class FlightListTask extends AsyncTask<String,ArrayList<HashMap<String, String>>, ArrayList<HashMap<String, String>>> {

    protected String onPreExecute(String temp) {
        progresdialoglistview=ProgressDialog.show(HomeActivity.this, "", "Loading");
        Log.e("onPreExecutive","called"+progresdialoglistview);
        return temp;
    }

    @Override
    protected ArrayList<HashMap<String, String>> doInBackground( String... params ) {
        return flightlist;
    }

    protected void onPostExecute(ArrayList<HashMap<String, String>> flightList) {
        // listview code....
    }

}
4

2 に答える 2

10

onPreExecuteメソッドを次のように変更します。

  @Override
  protected  void onPreExecute()
  {
      progresdialoglistview=ProgressDialog.show(HomeActivity.this, "","Loading");
      Log.e("onPreExecutive","called"+progresdialoglistview);

  }

onPreExecute()メソッドはパラメーターをとらず、戻り値の型は void です。onPreExecute から return も削除します

于 2012-12-10T11:30:38.550 に答える
4

オーバーライド しませんでしたがonPreExecute、代わりにオーバーロードしました。

onPreExecuteパラメータを取りませんし、何も返しません。代わりにこれを使用してください:

protected void onPreExecute()
于 2012-12-10T11:25:24.247 に答える