Fragments

Understanding fragments and their lifecycle

Introduction to Fragments

Fragments Android app development का एक महत्वपूर्ण component है। यह एक modular section होता है जो activity का एक part होता है और अपना own lifecycle रखता है।

Fragments are an important component in Android app development. They are modular sections that are part of an activity and have their own lifecycle.

Key Features (मुख्य विशेषताएं):

  • Fragments reusable UI components होते हैं
  • Fragments are reusable UI components
  • एक activity में multiple fragments हो सकते हैं
  • Multiple fragments can exist in one activity
  • Fragments का अपना lifecycle होता है
  • Fragments have their own lifecycle
  • Fragments को runtime में add, remove, या replace किया जा सकता है
  • Fragments can be added, removed, or replaced at runtime

Fragment Lifecycle (फ्रैगमेंट लाइफसाइकल)

Fragment का lifecycle activity के lifecycle से related होता है:

Fragment lifecycle is related to the activity lifecycle:

  • onAttach(): Fragment activity से attach होता है
  • onAttach(): Fragment is attached to activity
  • onCreate(): Fragment create होता है
  • onCreate(): Fragment is created
  • onCreateView(): Fragment का UI create होता है
  • onCreateView(): Fragment's UI is created
  • onActivityCreated(): Activity create होने के बाद call होता है
  • onActivityCreated(): Called after activity is created
  • onStart(): Fragment visible होता है
  • onStart(): Fragment becomes visible
  • onResume(): Fragment active होता है
  • onResume(): Fragment becomes active
  • onPause(): Fragment partially hidden होता है
  • onPause(): Fragment becomes partially hidden
  • onStop(): Fragment hidden होता है
  • onStop(): Fragment becomes hidden
  • onDestroyView(): Fragment का UI destroy होता है
  • onDestroyView(): Fragment's UI is destroyed
  • onDestroy(): Fragment destroy होता है
  • onDestroy(): Fragment is destroyed
  • onDetach(): Fragment activity से detach होता है
  • onDetach(): Fragment is detached from activity
  • Implementation Example (इम्प्लीमेंटेशन उदाहरण)

    Fragment को implement करने का example:

    Example of implementing a fragment:

    class MyFragment : Fragment() {
        override fun onCreateView(
            inflater: LayoutInflater,
            container: ViewGroup?,
            savedInstanceState: Bundle?
        ): View? {
            // Inflate the layout for this fragment
            return inflater.inflate(R.layout.fragment_my, container, false)
        }
    
        override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
            super.onViewCreated(view, savedInstanceState)
            // Initialize views and setup UI
        }
    
        override fun onPause() {
            super.onPause()
            // Save fragment state
        }
    }

    Fragment Communication (फ्रैगमेंट कम्युनिकेशन)

    Fragments के बीच communication के तरीके:

    Ways to communicate between fragments:

  • Activity Interface: Activity के through communication
  • Activity Interface: Communication through activity
  • ViewModel: Shared ViewModel का use करके
  • ViewModel: Using shared ViewModel
  • LiveData: LiveData objects के through
  • LiveData: Through LiveData objects
  • Fragment Result API: New Fragment Result API का use करके
  • Fragment Result API: Using new Fragment Result API
  • Best Practices (सर्वोत्तम प्रथाएं)

    Fragments के साथ काम करने के best practices:

    Best practices for working with fragments:

  • Modular Design: UI को small, reusable fragments में break करें
  • Modular Design: Break UI into small, reusable fragments
  • State Management: Fragment state को properly manage करें
  • State Management: Properly manage fragment state
  • Communication: Fragments के बीच proper communication setup करें
  • Communication: Set up proper communication between fragments
  • Back Stack: Fragment transactions को back stack में manage करें
  • Back Stack: Manage fragment transactions in back stack