簡體   English   中英

片段導航

[英]Fragment navigation

我正在創建一個具有一個主要活動和片段的應用程序。 我正在嘗試使用mainActivity上的以下代碼來控制backPress上將發生的情況:

@Override
    public void onBackPressed() {        
        if (getFragmentManager().getBackStackEntryCount() == 0) {
            this.finish();
        } else {
            getFragmentManager().popBackStack();
        }
    }

我的應用程序的結構是這樣的:MainAtivity-> Fragment1-> Fragment2-> Fragment2 ...(按回車鍵應使我進入Fragment1)
當我創建Fragment2時,我將Fragment1添加到了BackStack,當按回去時,我仍然在后台看到Fragment2。 我怎樣才能進入Fragment1而僅顯示Fragment1?

我不確定您如何提交片段。 但這會有所幫助。

提交時:

 // Initialize a Fragment Transaction.
FragmentTransaction ft = getSupportFragmentManager().beginTransaction();

// Record all steps for the transaction.

 ft.replace(R.id.home_frame_layout_for_fragments, baseFragments[i],     

// Add the transaction to backStack with tag of first added fragment
ft.addToBackStack(baseFragments[0].getTagText());

// Commit the transaction.
ft.commit();

移除時:

final FragmentManager fragmentManager = getSupportFragmentManager();
while (fragmentManager.getBackStackEntryCount() != 0) {
    fragmentManager.popBackStackImmediate();
}

這可能有效!

編碼愉快!!!

暫無
暫無

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

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