What is Fragment in Android:
Image Source: https://unsplash.com/photos/8aXyXWeQ154
A Fragment could be a piece of an activity that enables a more modular activity design. it’ll not be wrong if we are saying, a fraction could be a quite sub-activity.
Following are small print about fragment −
- The fragments have their own layout and their own behavior from their own life cycle callbacks.
- You can do things like add or remove fragments to the activity while the activity is going on.
- You can combine multiple fragments in an exceedingly single activity to create a multi-pane UI.
- A fragment is employed in multiple activities.
- The fragment’s life cycle is closely related to the life cycle of its host activity which indicates that when the activity is stopped, all the fragments available in the activity will also be discontinued.
- One fragment can implement behaviors that do not have an interface component.
- Fragments have been added in the Android API level 11(Honeycomb) version.
You create fragments by lengthening the fragment class and you can insert fractions into your activity layout by declaring the fragment as an element in the activity layout file.
Prior to fragment introduction, we had a limitation because we are able to show only one activity on the screen at one given point in time. So we weren’t ready to divide the device screens and control different parts separately. But with the introduction of the fragments, we gained more flexibility and overcame the limit of getting one activity on the screen at a time. Now we are able to have one activity but each activity can comprise multiple fragments which can have their own layout, events, and complete life cycle.
The following is an example of how two UI modules defined by fragments for tablet design are often combined into one activity, but separated for handset design.
Image Source: https://developer.android.com/guide/fragments?gclid=Cj0KCQjw9O6HBhCrARIsADx5qCTOcuQ9zrfKKOb-eSL11oGptutH0jnoaUY3nR335VYLCnHgsVEhKCEaAt30EALw_wcB&gclsrc=aw.ds
The application can embed two pieces in Activity A while running on a tablet-sized device. However, on a handset-sized screen, there is not enough space for both fragments, so the activity only includes part of the list of articles, and when the user chooses an editorial, it starts Activity B, which includes the other part. The article does.
Life Cycle of Fragment:
Android fragments have their own life cycle very like an android activity. This section summarizes the different phases of its life cycle.
Image Source: https://developer.android.com/guide/fragments/lifecycle
Here is that the list of methods that you’ll be able to override in your fragment class −
- onAttach() The fragment instance is related to an activity instance. The fragment and therefore the activity isn’t fully initialized. Normally you will get the consistency of the activity during this method which uses the piece for further initial work.
- onCreate() The system calls this method when creating the onCreate () fragment. When the fragment is paused or paused or closed, you must restart the parts you need to restart.
- onCreateView() When it comes time for the fragment to draw its interface for the primary time, the system calls this call lab. To draw a UI for your piece, you need to return a view element from this method that is the basis of the layout of your piece. If the fragment does not provide the UI you will return a null.
- onActivityCreated() When the onActivityCreated () host activity is formed, the A activity is called after the C Negotview () method. Activity and fragment instances are created further because of the view hierarchy of the activity. At this time, the view is accessed with the findViewById() method. example. during this method, you’ll instantiate objects which require a Context object.
- onStart() The onStart() method is named once the fragment gets visible.
- onResume() Fragment becomes active.
- onPause() The system calls this method because the user indicates that the user is leaving the fragment. this is often usually where you ought to commit any changes that ought to be persisted beyond this user session.
- onStop()Fragment visiting be stopped by calling onStop().
- onDestroyView() Fragment view will destroy after calling this method.
- onDestroy() onDestroy() called to try to final pack up of the fragment’s state but Not bound to be called by the Android platform.
Use of Fragments:
This involves a number of straightforward steps to form Fragments.
- First of all, decide what percentage fragments you wish to use in an activity. as an example lets, we would like to use two fragments to handle the landscape and portrait modes of the device.
- Next supported the number of fragments, create classes that are able to extend the Fragment class. The fragment class has the above call lab functions. you’ll override any of the functions that supported your requirements.
- Corresponding to each fragment, you may create layout files in the XML file. These files will have layouts for defined Fragments.
- Finally, edit the activity file to define the specific logic of changing the fragments that support your need.