Fragment life cycle and activity life cycle are very similar, now let's take a look at different scenarios that invoke the lifecycle of those methods to create an Android project Lifefragment
Mainactivity.java
Package Com.example.fragmentlifecycle;import Android.os.bundle;import android.support.v4.app.FragmentActivity; Import Android.support.v4.app.fragmenttransaction;import Android.util.log;public class Mainactivity extends fragmentactivity {@Overrideprotected void onCreate (Bundle savedinstancestate) {super.oncreate (savedinstancestate); Setcontentview (R.layout.activity_main); Fragmenttransaction ft = Getsupportfragmentmanager (). BeginTransaction (); Ft.replace (R.id.container, New LifeFragment ()); Ft.commit (); LOG.E ("Life cycle", "activity---->oncreate");} @Overrideprotected void OnDestroy () {LOG.E ("Life cycle", "activity---->oncreate"); Super.ondestroy (); @Overrideprotected void OnPause () {LOG.E ("Life cycle", "activity---->oncreate"); Super.onpause (); @Overrideprotected void Onresume () {LOG.E ("Life cycle", "activity---->oncreate"); Super.onresume (); @Overrideprotected void OnStart () {LOG.E ("Life cycle", "activity---->oncreate"); Super.onstart (); @Overrideprotected void OnStop () {LOG.E ("Life cycle", "activity---->oncreate"); supEr.onstop ();} @Overrideprotected void Onrestart () {LOG.E ("Life cycle", "activity---->oncreate"); Super.onrestart ();}}
Lifefragment.java
Package Com.example.fragmentlifecycle;import Android.app.activity;import Android.os.bundle;import Android.support.v4.app.fragment;import Android.util.log;import Android.view.layoutinflater;import Android.view.view;import Android.view.viewgroup;public class Lifefragment extends Fragment {@Overridepublic void onactivitycreated (Bundle savedinstancestate) {LOG.E ("Life cycle", "Fragment---->onactivitycreated"); Super.onactivitycreated (savedinstancestate);} @Overridepublic View Oncreateview (layoutinflater inflater, ViewGroup container,bundle savedinstancestate) {LOG.E (" Life cycle "," Fragment---->oncreateview "); return inflater.inflate (r.layout.lifefragment, null);} @Overridepublic void Onattach (activity activity) {LOG.E ("Life cycle", "Fragment---->onattach"); LOG.E ("Lifefragment", "activity=" +activity); Super.onattach (activity);} @Overridepublic void OnCreate (Bundle savedinstancestate) {LOG.E ("Life cycle", "Fragment---->oncreate"); Super.oncreate ( Savedinstancestate);} @Overridepublic void OnDestroy () {LOG.E ("Life cycle", "FRagment---->ondestroy "); Super.ondestroy ();} @Overridepublic void Ondetach () {LOG.E ("Life cycle", "Fragment---->ondetach"); Super.ondetach ();} @Overridepublic void OnPause () {LOG.E ("Life cycle", "Fragment---->onpause"); Super.onpause ();} @Overridepublic void Onresume () {LOG.E ("Life cycle", "Fragment---->onresume"); Super.onresume ();} @Overridepublic void OnStart () {LOG.E ("Life cycle", "Fragment---->onstart"); Super.onstart ();} @Overridepublic void OnStop () {LOG.E ("Life cycle", "Fragment---->onstop"); Super.onstop ();} @Overridepublic void Ondestroyview () {LOG.E ("Life cycle", "Fragment---->ondestroyview"); Super.ondestroyview ();}}
When the log message is first run:
<pre name= "code" class= "java" >11-03 13:35:37.693:e/life cycle (14098): Activity---->oncreate11-03 13:35:37.693:e/ Life cycle (14098): Activity---->onstart11-03 13:35:37.693:e/life cycle (14098): Fragment---->onattach11-03 13:35:37.693:e /life cycle (14098): Fragment---->oncreate11-03 13:35:37.694:e/life cycle (14098): Fragment---->oncreateview11-03 13:35:37.697:e/life cycle (14098): Fragment---->onactivitycreated11-03 13:35:37.697:e/life cycle (14098): Fragment----> Onstart11-03 13:35:37.698:e/life cycle (14098): Activity---->onresume11-03 13:35:37.698:e/life cycle (14098): Fragment---- >onresume
Activity is blocked by life cycle method
Android Fragment life cycle