Sobes.tech
Junior

Ποια είναι η διαφορά μεταξύ του FragmentManager και των συναλλαγών τμημάτων;

sobes.tech AI

Απάντηση από AI

Το FragmentManager διαχειρίζεται:

  • Το κύκλο ζωής των τμημάτων.
  • Το στοίβα επιστροφής (Back Stack).
  • Την αναζήτηση τμημάτων με βάση το id ή την ετικέτα.

Οι μεταβάσεις τμημάτων (FragmentTransaction) χρησιμοποιούνται για την εκτέλεση λειτουργιών στα τμήματα, όπως:

  • Προσθήκη (add())
  • Διαγραφή (remove())
  • Αντικατάσταση (replace())
  • Εμφάνιση (show())
  • Απόκρυψη (hide())

Παράδειγμα:

// Λαμβάνουμε το FragmentManager
FragmentManager fragmentManager = getSupportFragmentManager();

// Ξεκινάμε μια μετακίνηση
FragmentTransaction transaction = fragmentManager.beginTransaction();

// Εκτελούμε μια λειτουργία (π.χ., αντικαθιστούμε ένα τμήμα με ένα άλλο)
MyFragment newFragment = new MyFragment();
transaction.replace(R.id.fragment_container, newFragment);

// Προσθέτουμε τη μετακίνηση στο στοίβα επιστροφής (προαιρετικά)
transaction.addToBackStack(null);

// Ολοκληρώνουμε τη μετακίνηση
transaction.commit();