异步方法完成后,从异步打开警报框

时间:2013-11-30 07:44:41

标签: android asynchronous android-asynctask

我的主活动中有一个方法执行异步类,但是当我将警报框代码放入其中时它不起作用。即。

public void onGetStatus(View v) {

    new AsyncClass().execute();
}

}


class AsyncClass extends AsyncTask < Void, Void, String > {

    @
    Override
    protected String doInBackground(String...params) {



        //TODO       


    }

}




protected void onPostExecute(String test) {

    AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(this);

    alertDialogBuilder.setMessage(test);

    alertDialogBuilder.show();



}

当我尝试在类的onPostexecture方法中执行AlertDialogBu​​ilder时它不起作用,但是如果我复制并粘贴到调用AsyncTask类的方法中它可以正常工作。

2 个答案:

答案 0 :(得分:1)

new AlertDialog.Builder(this)更改为new AlertDialog.Builder(youractivity.this)

答案 1 :(得分:1)

这个调用当前的Async对象。这样做: -

protected void onPostExecute(String test) {

AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(MainActivity.this);//Put your activityname instead of MainActivity

alertDialogBuilder.setMessage(test);

alertDialogBuilder.show();



}