按下按钮后如何触发覆盖方法?

我想覆盖onBackPressed()但在 onClick 事件之后。


@Override

public void onBackPressed() {

    //Toast Please wait for process

}

这是我的 onClick 方法:我只想onBackPressed()在此方法执行时覆盖。


private void fetchData() {

    showLoader();

}



肥皂起泡泡
浏览 135回答 3
3回答

茅侃侃

当您的 fetchData 方法完成执行时,您可以保留一个布尔变量onBackPressed()并将其值更新为 true,并且在您的方法中,您可以检查该布尔变量的值并相应地执行您的代码

白衣非少年

您可以使用以下代码段。   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; 所以它会有正常的行为。

蓝山帝景

您必须编写如下代码:private boolean isDataCalled = true; // global variable然后private void fetchData() {    isDataCalled = false;    showLoader();}当您的数据完全加载时,使此变量为真。isDataCalled = true;在你的 onBackPress 方法中: @Overridepublic void onBackPressed() {    if (isDataCalled) {        super.onBackPressed(); // back press when no data fething.    } else {        //Toast Please wait for process    }}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java