android_activity_研究(一)

android中活动的概念(activity)是一个很重要的东东。这里有很多东东值得好好研究。最好的研究来源当然是官网啦,所以本人这里写一点对官网文章的研究心得。

一、活动(activity)的概念

      在计算机世界,活动是一个类,是个类必然有很多它自己的属性、方法等,这个太抽象,不好理解;

      在现实世界,活动就是一个界面,我们能看到的手机的界面,这个就好理解多了。

      够简单吧!!如果国内出书的学者来解释这个东东的话,肯定是花一个篇章来解释这个概念,啰嗦啰嗦的,反而讲复杂了。官网的解释也就一句话而已~~

二、活动的状态

      为了更好地理解活动的状态,咱不玩抽象。个人认为,计算机知识本身就是一个抽象的知识;抽象的知识用抽象的方法解释,那就等于没解释,这个往往也是国内闷骚的学者们喜欢的解释方式,因为这样方能显示他们的牛逼,不过他们确实像牛逼。

      比如,有三个人,一个是A,一个是B,一个是C,C当然可以看到A和B了,所以就认为A和B是活动,C是用户。现在,C在一个屋子的外面,A和B在屋子的里面。A出来了,C看到他了,此时,A的状态就是活的;此时,B出来了,半个身子挡着A,此时,C可以看到B和A,但是B挡住了A的半个身子,此时,B是活的,A是暂停的;由于A是暂停的,当手机内存低的时候,系统会宰了他;此时,B把A的全身都挡住了,C看不到A了,此时A就是停止的状态,内存低的时候,系统还是会宰了他;更巧的是,此时系统的内训还真低了,系统真的把A给宰了,此时A的状态就是摧毁了。被摧毁的时候,A拥有的所有资源都被剥夺了。

     经典的几大状态如下:

     1. onCreate()(Bundle savedInstanceState);

      活动刚创建时就会调用的。这里面,我需要做一切必须地初始化工作。还有一个参数是bundle类的。之前如果销毁的这个活动的参数被保存在bundle中,则在此方法中,可以通过bundle类再次找回这个鞋个数据;

     2. onRestart()

     之前活动被stop了吗?那么活动死灰复燃的时候,此方法派上用场。当然了,死灰复燃如果是重新create的话,那么调用的就是onCreate的方法,而不是这个方法了;

     3. onStart()

     此时的状态不伦不类,用户还是看不到界面;

     4.onResume()

     用户看到界面了;

     5.onPause()

     当前活动被暂停了。用户可以看到界面,但是无法交互操作了。只有当这个方法返回时,新的活动才能呈现出来;

     6.onStop()

     当前活动退居幕后;

     7.onDestroy()

     嗝屁。我使用finish方法就会调用这个方法。

     在onPause的时候,可能被系统宰了,因此,需要在该方法中保存该活动的数据,下次在oncreate的时候,还可以恢复。

原文地址:https://www.cnblogs.com/itblog/p/7236638.html