Rumah >Java >javaTutorial >Bagaimana Mengganti Serpihan Secara Dinamik dalam Kumpulan Aktiviti?

Bagaimana Mengganti Serpihan Secara Dinamik dalam Kumpulan Aktiviti?

Patricia Arquette
Patricia Arquetteasal
2024-11-18 09:25:02967semak imbas

How to Dynamically Replace Fragments within an Activity Group?

Menggantikan Serpihan dalam Kumpulan Aktiviti

Soalan ini berkenaan dengan menggantikan serpihan dalam kumpulan aktiviti dengan serpihan lain. Kod yang disediakan gagal memaparkan paparan yang dimaksudkan semasa melaksanakan tanpa ralat. Mari kita mendalami isu ini dan menyediakan penyelesaian.

Masalahnya

Kod awal cuba menggantikan serpihan dengan ID R.id.book_description_fragment dengan menggantikannya dengan BahagianDeskripsiFragmen. Walau bagaimanapun, paparan gagal dipaparkan.

Penyelesaian

Serpihan yang ditakrifkan secara statik dalam XML tidak boleh digantikan secara dinamik. Untuk menangani had ini:

  1. Tambah Serpihan Secara Dinamik: Tambah serpihan yang diingini secara dinamik pada kumpulan aktiviti pada masa jalan untuk memudahkan penggantian.
  2. Ganti Fragmen Kod: Gunakan versi terkini coretan kod berikut yang menggantikan serpihan secara dinamik:
Fragment newFragment = new SectionDescriptionFragment();
FragmentTransaction transaction = getActivity().getFragmentManager().beginTransaction();
transaction.replace(R.id.fragment_container, newFragment);
transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
transaction.addToBackStack(null);
transaction.commit();
  1. ID Bekas Fragmen: Pastikan R.id. fragment_container sepadan dengan reka letak atau bekas dalam kumpulan aktiviti yang akan mengehoskan serpihan dinamik.

Nota Utama:

  • Ingat untuk menentukan serpihan bekas dalam susun atur XML kumpulan aktiviti anda.
  • Apabila menggantikan serpihan, kandungan dalam bekas serpihan akan digantikan dengan serpihan baharu.
  • Menggunakan kaedah addToBackStack membolehkan pengguna menavigasi kembali ke serpihan sebelumnya.

Atas ialah kandungan terperinci Bagaimana Mengganti Serpihan Secara Dinamik dalam Kumpulan Aktiviti?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn