Heim  >  Artikel  >  Java  >  Wie kann ich hartcodierte Fragmente in Android dynamisch ersetzen?

Wie kann ich hartcodierte Fragmente in Android dynamisch ersetzen?

Patricia Arquette
Patricia ArquetteOriginal
2024-11-21 06:29:10889Durchsuche

How Can I Dynamically Replace Hard-coded Fragments in Android?

Dynamisches Ersetzen von Fragmenten innerhalb von Aktivitätsgruppen

Das Ersetzen von Fragmenten innerhalb einer Aktivitätsgruppe kann eine Herausforderung darstellen. Dieser Artikel befasst sich mit dem Problem des Austauschs eines Fragments gegen ein anderes, wenn das ursprüngliche Fragment in XML fest codiert ist.

Lösung

Um ein Fragment dynamisch zu ersetzen, muss es dies getan haben wurden zunächst dynamisch hinzugefügt. So erreichen Sie dies:

// Create new fragment and transaction
Fragment newFragment = new SectionDescriptionFragment();
FragmentTransaction transaction = getActivity().getSupportFragmentManager().beginTransaction();

// Replace the existing fragment
transaction.replace(R.id.book_description_fragment, newFragment);
transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
transaction.addToBackStack(null); // Optional: Add to back stack for navigation

// Commit the transaction
transaction.commit();

Hinweis:

  • Stellen Sie sicher, dass R.id.book_description_fragment ein Layout-Container in der übergeordneten Aktivität ist.
  • Entfernen Sie alle in XML fest codierten Fragmente, bevor Sie sie dynamisch hinzufügen.

Das obige ist der detaillierte Inhalt vonWie kann ich hartcodierte Fragmente in Android dynamisch ersetzen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn