簡體   English   中英

Android - 如何知道,在主機活動中,導航已經結束

[英]Android - How to know, in the host activity, the navigation has come to end

我正在為我的應用程序考慮新的架構,並且我正在為已經存在的應用程序實現一些新功能。

所以,基本上我的新模塊有一個流程,使用導航組件,當這結束時,我的應用程序需要知道調用舊流程。

我怎么知道的? 導航活動能否知道導航何時結束?

您的主機活動可以調用addOnDestinationChangedListener以便它知道導航流中的當前片段。 如果我的理解是正確的,你可以在你的主機活動的onCreate中做這樣的事情:

navController.addOnDestinationChangedListener(new NavController.OnDestinationChangedListener() {
   @Override
   public void onDestinationChanged(@NonNull NavController controller,
           @NonNull NavDestination destination, @Nullable Bundle arguments) {
       // if you have reached the end of your navigation flow, do something
       if(destination.getId() == R.id.end_dest) {
           // add code calling your old flow here
       } 
   }
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM