Sobes.tech
Junior

რა არის განსხვავება ფრაგმენტის ციკლსა და Activity-ის ციკლს შორის?

sobes.tech AI

პასუხი AI-სგან

ცხოვრების ციკლი მიკრო-ფრაგმენტის მჭიდროდ დაკავშირებულია მშობელი Activity-ს სიცოცხლის ციკლთან. ფრაგმენტი ვერ არსებობს გარეშე Activity-ს.

ძირითადი განსხვავებები:

  • onCreate(): ფრაგმენტს აქვს დამატებითი მეთოდი onAttach(), რომელიც ხდება onCreate()-ს წინ, სადაც ხდება დაკავშირება Activity-სთან (მიღება კონტექსტი Activity-ს), და onCreateView(), სადაც ქმნიან View-ჰიერარქიას ფრაგმენტისთვის.
  • onDestroy(): ფრაგმენტს აქვს დამატებითი მეთოდი onDestroyView(), რომელიც ხდება onDestroy()-ს წინ, სადაც ხდება View-ჰიერარქიის გასუფთავება, და onDetach() onDestroy()-ს შემდეგ, სადაც ხდება დაკავშირების გაწყვეტა.
  • მდგომარეობა: ფრაგმენტი შეიძლება დაემატოს Activity-ის ბექსტეკში, რაც საშუალებას აძლევს მისი მდგომარეობის აღდგენა დაბრუნებისას. Activity საბოლოოდ განადგურდება.
  • შენახვა: Activity მუშაობს ეკრანის დონეზე, ხოლო ფრაგმენტები შეიძლება იყოს ერთმანეთზე და Activity-ზე შერწყმული.

ძირითადი მეთოდების სიცოცხლის ციკლის შედარებითი სია:

Activity მეთოდი ფრაგმენტის მეთოდი(ები) აღწერა
onCreate() onAttach(), onCreate(), onCreateView() ნიმუშის შექმნა, დაკავშირება, View-ის შექმნა
onStart() onStart() ხდება ხილული
onResume() onResume() იწყებს ურთიერთქმედებას მომხმარებელთან
onPause() onPause() გადადის უკანა პლანზე ან ნაწილობრივ მალავს
onStop() onStop() ხდება უხილავი
onDestroy() onDestroyView(), onDestroy(), onDetach() View-ის განადგურება, ნიმუშის, გაწყვეტა

ფრაგმენტის სიცოცხლის ციკლი უფრო გრაფიკულია, რაც საშუალებას აძლევს უფრო მოქნილი მართვა UI-კომპონენტების მდგომარეობისა და ქცევის ერთ Activity-ის ფარგლებში. მაგალითად, onCreateView() იძახება ყოველ ჯერზე, როდესაც ქმნიან View-ეს, მიუხედავად იმისა, რომ თავად ფრაგმენტი უკვე შექმნილია (მაგალითად, კონფიგურაციის ცვლილების დროს). onCreate() იძახება მხოლოდ ერთხელ, ფრაგმენტის სიცოცხლის ციკლში.