Activity有七个生命周期。跳转时,A先onpause,B再oncreate,onstart,onresume,然后a再onsaveinstancestate,onstop;按home键时,onpause,onsaveinstancestate,onstop一次执行;按电源开关键与按home键相同,再回到activity也相同,走onrestart--》onstart方法;按返回键走ondestroy方法。
当界面有edittext控件时,输入文字,按home键和电源键再回来,文字依然存在,控件加不加id都一样,如果想存储短期数据,可在onsaveinstancestate中放入bundle中,在oncreate,或者onrestoreinstancestate,onpostcreate中再用这些数据,注意判断bundle是否为空,因为onsaveinstancestate方法只在系统想要销毁你的activity还未真正销毁的时候调用,即activity处于onstop而未ondestroy的时候,跳转,按home键,按电源都会触发,按返回不会,因为是用户自己销毁,不是系统销毁的。onrestoreinstancestate这个方法是在系统销毁你的activity并重新创建的时候触发,比如翻转屏幕,会销毁activity再重新创建一个activity,onrestoreinstancestate方法在onstart之后,onresume之前,onpostcreate在onrestoreinstancestate之后,onresume之前。翻转屏幕系统销毁activity时,如果activity中有edittext控件,没有id,则不会保存控件上的数据,有id,则会保存。