Skip to main content

Android Fragments

Android Fragments


  • Introduction to android fragments in Hindi
  • Android fragments life cycle in Hindi
  • Types of android fragments in Hindi
  • Creating android fragment in Hindi

Introduction to Android Fragments

एक fragment किसी activity के अंदर एक separate UI (user interface) होता है। Fragments की खुद की life cycle और input events होते है। आप एक fragment को कई activities में use कर सकते है। जब आपकी activity running state में हो तब भी आप fragments को add और remove कर सकते है। Fragments को आप sub activity भी कह सकते है।  

android-fragments-in-hindi


Android fragments को android के Honeycomb version में introduce किया गया था।  Android fragments से पहले आप user को एक बार में एक activity ही show कर सकते थे इसलिए आप स्क्रीन को अलग अलग parts में divide नहीं कर सकते थे।

Fragments के आने से application design और भी ज्यादा flexible हो गयी क्योंकि आप यूजर को एक साथ एक से ज्यादा interface शो कर सकते है और उन्हें separately manage भी कर सकते है। अब आपके पास activity तो एक ही रहेगी लेकिन आप इसमें बहुत से fragments add कर सकते है।


एक fragment हमेशा activity में embedded होना चाहिए। Fragments की life cycle activity की life cycle से directly affected होती है। उदाहरण के लिए यदि activity pause होती है तो उसके सारे fragments भी pause हो जायेंगे। यदि activity destroy हो जाएगी तो उसके सभी fragments भी destroy हो जायेंगे।

जब activity running state में होती है तो आप उसके सभी fragments को independently manage कर सकते है।

जब आप fragment को ऐड करते है तो fragment आपकी activity की view hierarchy के View-Group में रहता है, और खुद का view layout डिफाइन करता है। आप fragment को activity layout में भी डाल सकते है इसके लिए आपको activity layout file में <fragment> को डिक्लेअर करना होगा।    

हालाँकि किसी fragment को activity layout का पार्ट बनाने की हमे कोई आवश्यकता नहीं है। यदि आप चाहे तो fragments को बिना UI के भी क्रिएट कर सकते है ताकि ये चुपचाप अपना काम कर सके।  


Basically fragments को tablet devices के लिए design किया गया था, क्योंकि tablet devices में ज्यादा स्पेस होता है। इस space को आप fragments की मदद से आसानी से यूज़ कर सकते है।  Activity के layout को fragments में divide करके आप screen की appearance को चेंज कर सकते है।

उदाहरण के लिए आप एक fragment में screen की left side में links की list provide कर सकते है, और right side के fragment में उन articles को open कर सकते है।  

आपको fragments को इस तरह design करना चाहिए ताकि एक fragment कई activities में यूज़ हो सके। क्योंकि हर fragment का खुद का layout होता है और खुद की life cycle होती है इसलिए आपको fragments को ऐसे design करना चाहिए ताकि एक fragment को आप कई activities में यूज़ कर सके।

ऐसा करना इसलिए आवश्यक है ताकि आप fragments को different screen sizes में यूज़ कर सके। जब आप अपनी application को tablet और handset दोनों devices के लिए बना रहे हो तो आप fragment को इस तरह configure कर सकते है की वो दोनों devices पे आसानी से run हो सके।  



Fragments Life Cycle

Android fragments की life cycle कुछ methods के द्वारा define की जाती है। इनके बारे में नीचे दिया जा रहा है।   

 Methods 
Description  

onAttach()

जब पहली बार activity के कोई fragment add किया जाता है तो ये method call होता है। 
  

onCreate()

जब fragment create होता है तो ये method android system के द्वारा call किया जाता है।   


onCreateView()

जब पहली बार fragment UI show होता है तो ये method android system के द्वारा call किया जाता है।   


onActivityCreated()


जब host activity create होती है तो ये method call होता है।   


onStart()


Fragment UI के visible होने के बाद ये method call होता है।
   

onResume()

जब fragment को pause करके वापस resume किया जाता है तो ये method call होता है।   


onPause()

जब fragment को pause किया जाता है तो ये method call होता है।   


onStop()

जब fragment stop होता है तो ये method call  किया जाता है।    


onDestroyView()

Fragment view को destroy करने के लिए ये method call किया जाता है।   


onDestroy()

Fragment destroy होने पर ये method call होता है।   




Creating Fragments

Fragment create करने के लिए आपको Fragment क्लास को extend करना होगा। Fragment क्लास Activity क्लास की तरह ही है। आप देखेंगे तो पाएंगे की activity life cycle और fragment life cycle ऑलमोस्ट  same है।

आपको सभी life cycle methods को implement करने की आवश्यकता नहीं है, लेंकिन आपको onCreate(), onCreateView() और onPause() methods को जरूर इम्प्लीमेंट करना चाहिए।

Fragment क्लास की 3 important sub classes भी है यदि आप चाहे तो इन्हे एक्सटेंड कर सकते है -

  1. DialogFragment - ये क्लास एक floating dialog क्रिएट करने के लिए यूज़ की जा सकती है। Dialog क्रिएट करने के लिए इस क्लास को यूज़ करना एक अच्छा alternative है। 
  2. ListFragment - ये क्लास एक items की लिस्ट display करती है जिसे आप adapter से manage कर सकते है। 
  3. PreferenceFragment - ये क्लास preference ऑब्जेक्ट्स की hierarchy को एक लिस्ट की तरह डिस्प्ले करती है ।       

    Declaring Fragments in Layout File 

    Fragments को layout file में declare  करने के लिए आपको <fragment> element डिक्लेअर करना होगा।  इस element का एक important attribute है android:name,  इसमें आप उस क्लास का नाम पास करते है जो fragment क्लास को extend करती है।  


    <fragment> element में android:id attribute भी होता है, जिसमे आप एक यूनिक id पास करते है।

    Example 


    <fragment android:name="class name which extends Fragment class" android:id="id">

    </fragment>


    Comments

    Popular posts from this blog

    Android Services

    Android Services Introduction to  android services in Hindi  Declaring  services in Hindi Creating a  android service in Hindi Introduction to Android Services इससे पहले की आप जाने की service क्या होती है आइये जानते है की service क्या नहीं होती है - एक service separate प्रोसेस नहीं होती है। ये आपकी एप्लीकेशन का ही पार्ट होती है।  एक service thread नहीं होती है।  आइये अब देखते है service क्या होती है - Service एक facility होती है जिससे आप android system को बता सकते है की आप कोई काम background में करते रहना चाहते है।  Service एक facility होती है जिससे एक एप्लीकेशन अपनी कुछ functionality दूसरी applications को expose कर सकती है।    हर service क्लास का <service> declaration AndroidManifest.xml file में होना चाहिए। Services को आप context.startService() और context.bindService() मेथड्स से स्टार्ट कर सकते है।            जब service component क्रिएट होता है तो android syst...

    Android Activity

    Android Activity Activity life cycle in Hindi Starting an  android activity in Hindi Creating a new activity in Hindi Destroying an  android activity in Hindi Introduction to Activity आप की application में एक से ज्यादा activity हो सकती है। जब आप इन activities के through navigate करते है, यानि एक activity से दूसरी activity में जाते है तो activity अपनी life cycle की different stages में जाती है। उदाहरण के लिए जब आपकी activity start होती है तो ये foreground में होती है और user का पूरा focus इस पर होता है। इस process के दौरान  android  system कुछ life cycle methods को call करता है। यदि user कोई दूसरी activity start करता है तो android system उस activity के life cycle methods को call करता है और आपकी पहले वाली activity background में चली जाती है। life cycle methods में आप decide कर सकते है की जब user जाता है या वापस आता है तो आपकी activity कैसे behave करेगी।  उदाहरण के लिए यदि आप एक वीडियो player बना रहे है तो जब user किसी दूसरी activity पर जाये तो...

    Android Spinners

    Android Spinners  Introduction to  android spinners in Hindi Defining  android spinners in Hindi Creating spinner items array in Hindi Responding to spinner selections in Hindi    Introduction to Android Spinners Android spinners आपकी एप्लीकेशन में एक drop down menu होती है। इस drop down menu में बहुत से items होते है जिन्हे user choices कहते है। जब user spinner पर क्लिक करता है तो ये items शो होते है। यूज़र अपने लिए appropriate choice choose करता है। By default spinner में सबसे top वाला element शो होता है। Spinners को XML layout file में क्रिएट किया जाता है। और items की लिस्ट string resource file में क्रिएट की जाती है। जिसमे आप एक string array क्रिएट करते है।  Spinner और items को जोड़ने के लिए एक array adapter क्रिएट किया जाता है। इसके बाद selection events को respond करने के लिए OnItemSelectedListener interface को  इम्प्लीमेंट किया जाता है।  Defining Android Spinners Android spinners को आप XML l...