में अंतर और OnCreate(), onCreateView() और onActivityCreated (का उपयोग करता है) में क्या अंतर हैं onCreate()
, onCreateView()
, और टुकड़े में onActivityCreated()
और क्या वे एक के लिए इस्तेमाल किया जाएगा?टुकड़े
टुकड़े
उत्तर
OnCreate():
एक Fragment
है Activity
के बाद कहा जाता है में की onAttachFragment()
लेकिन वह Fragment
से पहले की onCreateView()
onCreate()
विधि।
इस विधि में, आप चर निर्दिष्ट कर सकते हैं, Intent
एक्स्ट्रा, और कुछ और प्राप्त करें जिसमें व्यू पदानुक्रम (यानी गैर-ग्राफिकल प्रारंभिकरण) शामिल नहीं है। ऐसा इसलिए है क्योंकि Activity
के onCreate()
समाप्त होने पर इस विधि को कॉल किया जा सकता है, और इसलिए यहां दृश्य पदानुक्रम तक पहुंचने का प्रयास करने से क्रैश हो सकता है।
onCreateView():
onCreate()
के बाद कहा जाता है (Fragment
में), Fragment
के onCreateView()
कहा जाता है। आप अपने View
चर और असाइन कर सकते हैं कोई ग्राफिकल प्रारंभिकता। आपको इस विधि से View
वापस करने की उम्मीद है, और यह मुख्य यूआई व्यू है, लेकिन यदि आपका Fragment
किसी भी लेआउट या ग्राफिक्स का उपयोग नहीं करता है, तो आप null
वापस कर सकते हैं (यदि आप ओवरराइड नहीं करते हैं तो डिफ़ॉल्ट रूप से होता है)।
onActivityCreated():
नाम राज्यों के रूप में, इस के बाद Activity
के onCreate()
पूरा कर लिया है कहा जाता है। इसे onCreateView()
के बाद बुलाया जाता है, और मुख्य रूप से अंतिम प्रारंभिकरणों के लिए उपयोग किया जाता है (उदाहरण के लिए, यूआई तत्वों को संशोधित करना)।
सारांश में ...
... वे सभी Fragment
में कहा जाता है लेकिन अलग अलग समय पर कहा जाता है।
onCreate()
को गैर-ग्राफिकल प्रारंभिकरण करने के लिए पहले कहा जाता है। इसके बाद, आप onCreateView()
में उपयोग करने के लिए इच्छित View
वेरिएबल असाइन और घोषित कर सकते हैं। इसके बाद, onActivityCreated()
का उपयोग किसी भी अंतिम प्रारंभिक कार्य करने के लिए करें जो आप सब कुछ पूरा करने के बाद करना चाहते हैं।
आप आधिकारिक Android दस्तावेज़ को देखना चाहते हैं, तो यह यहां पाया जा सकता है:
- onCreate()
- onCreateView()
- onActivityCreated()
वहाँ भी कुछ थोड़ा अलग है, लेकिन स्टैक ओवरफ़्लो पर कम विकसित प्रश्न/उत्तर यहां:
मैंने सोचा कि मैं ऑन क्रिएट() पर गैर ग्राफिकल प्रारंभिक क्रियाओं को लागू करूंगा ताकि स्क्रीन घुमाए जाने पर उन्हें दोबारा नहीं बुलाया जा सके। यह पता चला है कि मुझे fragment.setRetainInstance (true) को कॉल करना है अन्यथा क्रिएट() और ऑनक्रेट व्यू() दोनों को स्क्रीन घुमाए जाने पर फिर से कॉल किया जाता है। –
ऑनक्रेट व्यू() में, दृश्य पदानुक्रम तक पहुंचने के लिए सुरक्षित है? – Cody
@ कोडी मुझे विश्वास है - दृश्य पदानुक्रम तक पहुंच 'onCreateView' का सटीक उद्देश्य है। –
एक संक्षिप्त, सचित्र जवाब की तलाश में किसी को भी के लिए:
https://hanaskuliah.wordpress.com/2015/12/07/android-5-development-part-6-fragment/
और,
पहला चित्र सहायक है लेकिन _ भगवान, फोंट! _ – TylerJames
सहमत हैं। इस तरह की चीजों के लिए कॉमिक सैन्स आवश्यक है –
- 1. टुकड़े टुकड़े
- 2. टुकड़े टुकड़े के अंदर टुकड़े
- 3. टुकड़े टुकड़े और टुकड़े के बीच अंतर
- 4. एक टुकड़े टुकड़े
- 5. टुकड़े टुकड़े में मेनू
- 6. टुकड़े
- 7. टुकड़े
- 8. टुकड़े
- 9. टुकड़े टुकड़े और नुकसान छवि
- 10. टुकड़े टुकड़े किए बिना क्रिया बार टैब?
- 11. ऑक्टेव प्रतीकात्मक पैकेज में टुकड़े टुकड़े कार्य?
- 12. एंड्रॉयड FragmentTab मेजबान और टुकड़े टुकड़े
- 13. व्यूपागर + टुकड़े - टुकड़े नहीं दिखाए गए
- 14. जब टुकड़े
- 15. एकल टुकड़े
- 16. एक टुकड़े से एक टुकड़े का वर्तमान संस्करण पता लगाएं?
- 17. एंड्रॉइड: टैबहोस्ट - पैरामीटर को टुकड़े टुकड़े करने के लिए
- 18. टुकड़े टुकड़े में टोस्ट, getActivity() या getAcitivity() प्राप्त करें। GetAplicationContext()?
- 19. वेबजीएल में एक टुकड़े टुकड़े में एकाधिक बनावट कैसे भेजें?
- 20. एक टुकड़े टुकड़े के अंदर पिक्सेल जानकारी कैसे प्राप्त करें?
- 21. मिलान पहेली टुकड़े
- 22. ViewPager टुकड़े onCreate
- 23. टुकड़े एक दूसरे को
- 24. टुकड़े पिछले कुछ अक्षर
- 25. प्रोग्राम टुकड़े स्विच करें
- 26. टुकड़े से कॉल खंड
- 27. नेस्टेड टुकड़े दुर्घटना
- 28. टुकड़े पुन: उपयोग
- 29. साझा तत्वों और टुकड़े
- 30. एंड्रॉइड: दृश्य/गतिविधियां/टुकड़े
भी देखें: http://stackoverflow.com/questions/27227906/where-is-the-diferent-between-oncreate-and-oncreateview –
@BradLarson मुझे समझ नहीं आता क्यों यह बंद किया गया था । यह अपेक्षाकृत लोकप्रिय प्रश्न साबित हुआ है और आपकी टिप्पणी में दिए गए लिंक से अलग है। यह प्रश्न तीन अलग-अलग तरीकों के बीच अंतर और एक दूसरे से तुलना करने के तरीके के बारे में पूछ रहा है लेकिन आपके द्वारा लिखे गए प्रश्न में केवल दो विधियों का उल्लेख किया गया है। –
@BradLarson मेला पर्याप्त और अच्छी तरह से देखा। अब जबकि मुझे समझ है, क्या मैं एक ऐसा उत्तर नहीं लिख सकता जो अतिरिक्त तरीकों के लिए लिंक का संदर्भ देकर तीन विधियों की तुलना करता है? –