亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

按下按鈕后如何觸發覆蓋方法?

按下按鈕后如何觸發覆蓋方法?

肥皂起泡泡 2022-06-23 17:19:55
我想覆蓋onBackPressed()但在 onClick 事件之后。@Overridepublic void onBackPressed() {    //Toast Please wait for process}這是我的 onClick 方法:我只想onBackPressed()在此方法執行時覆蓋。private void fetchData() {    showLoader();}
查看完整描述

3 回答

?
茅侃侃

TA貢獻1842條經驗 獲得超21個贊

當您的 fetchData 方法完成執行時,您可以保留一個布爾變量onBackPressed()并將其值更新為 true,并且在您的方法中,您可以檢查該布爾變量的值并相應地執行您的代碼



查看完整回答
反對 回復 2022-06-23
?
白衣非少年

TA貢獻1155條經驗 獲得超0個贊

您可以使用以下代碼段。


   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; 所以它會有正常的行為。


查看完整回答
反對 回復 2022-06-23
?
藍山帝景

TA貢獻1843條經驗 獲得超7個贊

您必須編寫如下代碼:


private boolean isDataCalled = true; // global variable

然后


private void fetchData() {

    isDataCalled = false;

    showLoader();

}

當您的數據完全加載時,使此變量為真。


isDataCalled = true;

在你的 onBackPress 方法中:


 @Override

public void onBackPressed() {

    if (isDataCalled) {

        super.onBackPressed(); // back press when no data fething.

    } else {

        //Toast Please wait for process

    }

}


查看完整回答
反對 回復 2022-06-23
  • 3 回答
  • 0 關注
  • 155 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號