簡體   English   中英

使用Android導航組件從第一個活動導航到第二個活動時如何關閉/完成第一個活動

[英]How to close/finish the first activity when navigating from first activity to second activity using android navigation component

我是第一次使用android導航組件,並且對Android體系結構組件也很陌生。 據我所知,android體系結構中的導航組件主要在同一活動中使用片段進行導航。 我試圖使用導航組件從一個活動導航到另一個活動:

activity.finish()              
Navigation.findNavController(btnView).navigate(R.id.activity)

在此, R.id.activity是在導航圖XML文件中定義的活動的id。

當我按下“后退”按鈕時,我仍然能夠看到前一個屏幕。 我的問題是,后向堆棧在導航組件中的工作方式是什么,為什么即使調用了該活動的destroy方法(由於activity.finish() ),我的第一個活動也會出現?

我可以回答您的第二部分,而第一部分的人會更好地理解您的情況。

通過執行以下方法不能完成您的活動,因為如果完成了該活動,那么您將不會在堆棧上看到它。

activity.finish()

在導航方法之后完成當前活動。 以下是完成當前活動的正確方法。

btn.setOnClickListener{            
Navigation.findNavController(btnView).navigate(R.id.secondActivity)
(activity as currentActivity).finish()
}

暫無
暫無

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

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