在我的旧项目中,我使用了 AsyncTask,但它已被弃用,所以我用什么方法代替了这个? 如果我们使用线程,则在 AsyncTask 中具有 onbackground、onPreExecute 和 onPostExecute 覆盖方法,这些部分在线程中调用。有没有替代方法。能给我解决办法吗?
Java 代码:
public class getDetailsfromWeb extends AsyncTask<Void, Void, String> {
@Override
protected String doInBackground(Void... params) {
if (paymentSync == null)
paymentSync = new ReceivePaymentSync(getActivity());
allCreditCardModel = new AllCreditCardModel();
allCreditCardModel = paymentSync.getGetCreditCardById(CrediCardId);
handler.post(allCreditRunnable);
return null;
}
/**
* @param string
*/
public void execute(String string) {
// TODO Auto-generated method stub
}
protected void onPreExecute() {
showProgress();
}
@Override
protected void onPostExecute(String result) {
progress.dismiss();
}
}
最佳答案
只需使用线程。
onPreExecute 代码进入构造函数。
doInBackground 代码进入 run()。
onPostExecute 代码在 runOnUiThread 的 runnable 运行中运行,您在 run() 结束时调用它。
关于android - AsyncTask 已弃用?使用什么方法代替 onPreExecute 和 onPostExecute?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64785984/