3 回答

TA貢獻(xiàn)1842條經(jīng)驗(yàn) 獲得超22個(gè)贊
當(dāng)您的 fetchData 方法完成執(zhí)行時(shí),您可以保留一個(gè)布爾變量onBackPressed()
并將其值更新為 true,并且在您的方法中,您可以檢查該布爾變量的值并相應(yīng)地執(zhí)行您的代碼

TA貢獻(xiàn)1155條經(jīng)驗(yàn) 獲得超0個(gè)贊
您可以使用以下代碼段。
boolean flag=false;
...
private void fetchData() {
showLoader();
flag=true;
}
...
@Override
public void onBackPressed() {
if(flag){
//Toast Please wait for process
}else{
super.onBackPressed();
}
}
一旦你的過程完成了 make flag=false; 所以它會(huì)有正常的行為。

TA貢獻(xiàn)1843條經(jīng)驗(yàn) 獲得超7個(gè)贊
您必須編寫如下代碼:
private boolean isDataCalled = true; // global variable
然后
private void fetchData() {
isDataCalled = false;
showLoader();
}
當(dāng)您的數(shù)據(jù)完全加載時(shí),使此變量為真。
isDataCalled = true;
在你的 onBackPress 方法中:
@Override
public void onBackPressed() {
if (isDataCalled) {
super.onBackPressed(); // back press when no data fething.
} else {
//Toast Please wait for process
}
}
添加回答
舉報(bào)