无法重写 AsyncTask 类中的 onPostExecute() 方法或使其触发

我在运行 .当我尝试设置我的类扩展时,其中被覆盖,我得到以下生成错误。onPostExecute()AsyncTaskAsyncTaskonPostExecute()

'AsyncTaskExampleActivity 类型的方法 onPostExecute() 必须覆盖或实现超类型方法”

我试图摆脱注释。这将消除生成错误,但该方法仍不执行。如果有人会如此友善地指出我忽略了什么,我将不胜感激。@Override

法典:

package com.asynctaskexample;

import android.os.AsyncTask;

public class AsyncTaskExampleActivity extends AsyncTask<Void, Void, Void> {

AsyncTaskExampleActivity(){
super();
    }

@Override
protected void onPreExecute() {
    }

@Override
protected Void doInBackground(Void... params) {
    return null;
}

@Override
protected void onPostExecute() {
    }
}

答案 1

OnPostExecute() 采用一个参数(您从 doInBackground() 返回的对象)。将其更改为 。如果未提供参数,则方法签名不匹配,并且重写批注开始抱怨没有函数可以使用此签名重写。protected void onPostExecute(Void v)


答案 2

尝试:

在类中,尝试右键单击并查找该方法。如果得到,它将为您提供具有所有类型参数的完整方法。Source -> Override/Implement methods..onPostExecute()


推荐