我想在我的android項目中使用導航組件,為了實現這一點,我將我的應用程序重構為基于片段的,但它提出了一個問題,我不知道如何將我的應用程序傳遞給我的導航onNewIntent()片段MainActivity。MainActivitya 也是如此NavHost,簡單來說,我有一個片段作為起始目的地,我怎樣才能onNewIntent()從 進入這個片段MainActivity?更新 另外,有沒有一種方法可以獲取當前呈現的片段的引用,例如當前持有的片段的引用NavHost?
2 回答

米琪卡哇伊
TA貢獻1998條經驗 獲得超6個贊
根據新的意圖,你可以做類似的事情
val navigationController = nav_host_fragment.findNavController()
if (navigationController.currentDestination?.id == R.id.fragmentA) {
(nav_host_fragment.childFragmentManager.fragments[0] as FragmentA).doSomething()
}
在這里您可以將任何值傳遞給函數 doSomething()

白衣染霜花
TA貢獻1796條經驗 獲得超10個贊
您可以在 MainActivity 類中使用:
private Fragment fragment;
fragment = new FragmentTry();
getSupportFragmentManager()
.beginTransaction()
.replace(R.id.fragmentid, fragment)
.commit();
添加回答
舉報
0/150
提交
取消