首頁 >Java >java教程 >為什麼我的 Android 活動群組中的片段沒有互相替換?

為什麼我的 Android 活動群組中的片段沒有互相替換?

Susan Sarandon
Susan Sarandon原創
2024-11-25 06:20:15599瀏覽

Why Aren't My Fragments Replacing Each Other in My Android Activity Group?

替換活動群組中的片段

如果您不熟悉 Android碎片框架,替換活動組中的片段可能是一項複雜的任務.

問題

當嘗試用另一個片段替換活動組內的片段時,您可能會遇到程式碼看似成功執行但沒有發生視覺變化的情況。這可能會令人困惑,因為沒有顯示任何異常訊息。

問題的根源在於 XML 中硬編碼的片段無法取代。相反,應該動態添加片段以允許替換。

動態新增和替換片段:

  1. 在將容納的活動中建立一個佈局或容器(例如,fragment_container)片段。
  2. 建立一個新的片段實例。
  3. 使用下列指令建立 FragmentTransaction getSupportFragmentManager()。
  4. 使用 transaction.replace() 將fragment_container 中的目前片段替換為新片段。
  5. 使用 transaction.addToBackStack(null)將事務加入背景堆疊,如果
  6. 使用以下命令提交交易transaction.commit().

範例程式碼

Fragment newFragment = new ExampleFragment();
FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
transaction.replace(R.id.fragment_container, newFragment);
transaction.addToBackStack(null);
transaction.commit();

注意:

  • 透過片段xml 佈局新增的內容不能已取代。
  • R.id.fragment_container 可以是 Activity 中任何適當的版面或容器。

以上是為什麼我的 Android 活動群組中的片段沒有互相替換?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn