在Android Studio中,我尝试实现AsyncTask
的 methods 接口,但它仅显示方法doInBackgound()
。我试图将光标放在AsyncTask上,然后按 Alt + Enter ,但是它仅提供方法doInBackgound()
。
import android.os.AsyncTask;
import java.net.URL;
public class MyTask extends AsyncTask<URL, Integer, Long> {
@Override
protected Long doInBackground(URL... urls) {
return null;
}
}
答案 0 :(得分:0)
尝试对替代方法按Ctrl +O。查看是否可以从那里实现OnPostExecute()。
重要: OnPostExecute()需要一个从doInBackground()返回的参数。如果未提供参数并且方法签名不匹配,则覆盖注释可能无法识别该方法。
答案 1 :(得分:0)
之所以只看到AsyncTask::doInBackground(URL...)
,是因为该方法未在抽象类AsyncTask
中实现。
但是,其他的具有默认实现,因此您只能覆盖它们。如果您需要 IntelliJ 或 Android Studio 来建议其他人,则需要执行 CTRL + O 。这将建议您可以从父类中覆盖的其他方法。
答案 2 :(得分:0)
public class MyTask extends AsyncTask<URL, Integer, Long> {
@Override
protected Long doInBackground(URL... urls) {
return null;
}
@Override
protected void onPreExecute() {
super.onPreExecute();
}
@Override
protected void onPostExecute(Long aLong) {
super.onPostExecute(aLong);
}
}