一、什么是Activity?
简单的说:Activity就是布满整个窗口或者悬浮于其他窗口上的交互界面。在一个应用程序中通常由多个Activity构成,都会在l中指定一个主的Activity,如下设置
<actionandroid:name="android.intent.action.MAIN" />
当程序第一次运行时用户就会看这个Activity,这个Activity可以通过启动其他的Activity进行相关操作。当启动其他的Activity时这个当前的这个Activity将会停止,新的Activity将会压入栈中,同时获取用户焦点,这时就可在这个Activity上操作了。都知道栈是先进后出的原则,那么当用户按Back键时,当前的这个Activity销毁,前一个Activity重新恢复。
二、Activity的生命周期
下面上代码:
public class ActivityDemo extends Activity {
不眠飞行
private final static String TAG="ActivityDemo";
@Override
public void onCreate(Bundle savedInstanceState) {
八仙传奇
tContentView(R.layout.main);
Log.i(TAG, "onCreate");
}
@Override
protected void onStart() {
Log.i(TAG, "onStart");
}
@Override
protected void onRestart() {
Log.i(TAG, "onRestart");
}小学运动会
@Override
protected void onResume() {
Log.i(TAG, "onResume");
}
@Override
protected void onPau() {
Log.i(TAG, "onPau");
}
@Override
protected void onStop() {
Log.i(TAG, "onStop");
}
@Override
protected void onDestroy() {
Log.i(TAG, "onDestroy");
}
}
代码很简单,就是重写了Activity的生命周期方法,实际运行看下效果
1、运行
看到如下打印日志:
ActivityDemo: onCreate
ActivityDemo onStart
ActivityDemo: onResume
2、按下返回按键:
ActivityDemo: onPau
ActivityDemo: onStop
ActivityDemo: onDestroy
3、长按Home键,弹出最近打开过的应用程序,点击ActivityDemo
ActivityDemo: onCreate
ActivityDemo: onStart
ActivityDemo: onResume
4、按Home键
ActivityDemo: onPau四字伤感网名
ActivityDemo: onStop
5、再次点击打开
ActivityDemo: onRestart
ActivityDemo: onStart
ActivityDemo: onResume
通过日志信息,我们可以看到Activity的启动过程:onCreate—onStart—onResume;下返回键时:onPau—onStop—onDestroy 正如上面说是,当按下返回键时,此Activity弹出栈,程序销毁。确实如此,我们再次打开时的启动过程又回到onCreate—onStart—onResume。OK,启动之后按下Home键,回到Launcher,查看打印信息:onPau—onStop,再次打开的运行过程:onRestart—onStart—onResume。欲望快递
我们通过对Activity的各种操作,构成了Activity的生命周期,我们看到无论对Activity做如何的操作,都会接收到相关的回调方法,那么我们在开发的过程中通过这些
回调方法就可以写工作,比如说释放一些重量级的对象,网络连接,数据库连接,文件读等等。
三、每个方法的详细讲解:
onCreate():当 activity 第一次创建时会被调用。在这个方法中你需要完成所有的正
常静态设置,比如创建一个视图( view )、绑定列表的数据等等。如果能捕获到activity 状态的话,这个方法传递进来的 Bundle 对象将存放了 activity 当前的状态。调
用该方法后一般会调用 onStart() 方法。
onRestart():在 activity 被停止后重新启动时会调用该方法。其后续会调用 onStart 方法。
掩耳盗铃的意思onStart()à当 activity 对于用户可见前即调用这个方法。如果 activity回到前台则接着调用 onResume() ,如果 activity 隐藏则调用onStop()
onResume():在 activity 开始与用户交互前调用该方法。在这时该activity 处于activity 栈的顶部,并且接受用户的输入。其后续会调用 onPau() 方法。
onPau():在系统准备开始恢复其它 activity 时会调用该方法。这个方法中通常用来提交一些还没保存的更改到持久数据中,停止一些动画或其它一些耗 CPU 的操作等等。无论在该方法里面进行任何操作,都需要较快速完成,因为如果它不返回的话,下一个activity 将无法恢复出来。如果 activity 返回到前台将会调用 onResume() ,如果activity 变得对用户不可见了将会调用onStop() 。
onStop():在 activity 对用户不可见时将调用该方法。可能会因为当前 activity 正在被销毁,或另一个 activity (已经存在的activity 或新的 activity )已经恢复了正准备覆盖它,而调用该方法。如果 activity 正准备返回与用户交互时后续会调用onRestart ,如果 activity 正在被释放则会调用 onDestroy 。长城汽车集团
onDestroy():在 activity 被销毁前会调用该方法。这是 activity 能接收到的最后一个调用。可能会因为有人调用了 finish 方法使得当前activity 正在关闭,或系统为了保护内存临时释放这个 activity的实例,而调用该方法。你可以用 isFinishing 方法来区分这两种不同的情况。
<
作文优美语段集锦
1、青春是用意志的血滴和拼搏的汗水酿成的琼浆——历久弥香;青春是用不凋的希望和不灭的向往编织的彩虹——绚丽辉煌;青春是用永恒的执著和顽强的韧劲筑起的一道铜墙铁壁——固若金汤。
2、信念是巍巍大厦的栋梁,没有它,就只是一堆散乱的砖瓦;信念是滔滔大江的河床,没有它,就只有一片泛滥的波浪;信念是熊熊烈火的引星,没有它,就只有一把冰冷的柴把;信念是远洋巨轮的主机,没有它,就只剩下瘫痪的巨架。
3、站在历史的海岸漫溯那一道道历史沟渠:楚大夫沉吟泽畔,九死不悔;魏武帝扬鞭东指,壮心不已;陶渊明悠然南山,饮酒采菊……他们选择了永恒,纵然谄媚诬蔑视听,也不随其流扬其波,这是执著的选择;纵然马革裹尸,魂归狼烟,只是豪壮的选择;纵然一身清苦,终日难饱,也愿怡然自乐,躬耕陇亩,这是高雅的选择。在一番选择中,帝王将相成其盖世伟业,贤士迁客成其千古文章。
3、只有启程,才会到达理想和目的地,只有拼搏,才会获得辉煌的成功,只有播种,才会有收获。只有追求,才会品味堂堂正正的人。
4、如果说友谊是一颗常青树,那么,浇灌它的必定是出自心田的清泉;如果说友谊是一朵开不败的鲜花,那么,照耀它的必定是从心中升起的太阳。多少笑声都是友谊唤起的,多少眼泪都是友谊揩干的。友谊的港湾温情脉脉,友谊的清风灌满征帆。友谊不是感情的投资,它不需要股息和分红。(友谊可以换其他词语)
5、如果说生命是一座庄严的城堡,如果说生命是一株苍茂的大树,如果说生命是一只飞翔的海鸟。那么,信念就是那穹顶的梁柱,就是那深扎的树根,就是那扇动的翅膀。没有信念,生命的动力便荡
然无存;没有信念,生命的美丽便杳然西去。
6、毅力,是千里大堤一沙一石的凝聚,一点点地累积,才有前不见头后不见尾的壮丽;毅力,是春蚕吐丝一缕一缕的环绕,一丝丝地坚持,才有破茧而出重见光明的辉煌;毅力,是远航的船的帆,有了帆,船才可以到达成功的彼岸。
7、爱心是一片照射在冬日的阳光,使贫病交迫的人感到人间的温暖;爱心是一泓出现在沙漠里的泉水,使濒临绝境的人重新看到生活的希望;爱心是一首飘荡在夜空的歌谣,使孤苦无依的人获得心灵的慰藉。
8、心的本色该是如此。成,如朗月照花,深潭微澜,不论顺逆,不论成败的超然,是扬鞭策马,登高临远的驿站;败,仍滴水穿石,汇流入海,有穷且益坚,不坠青云的傲岸,有“将相本无主,男儿当自强”的倔强。荣,江山依旧,风采犹然,恰沧海巫山,熟视岁月如流,浮华万千,不屑过眼烟云;辱,胯下韩信,雪底苍松,宛若羽化之仙,知退一步,海阔天空,不肯因噎废食。
9、成熟是一种明亮而不刺眼的光辉,一种圆润而不腻耳的音响,一种不需要对别人察颜观色的从容,一种终于停止了向周围申诉求告的大气,一种不理会哄闹的微笑,一种洗刷了偏激的淡漠,一种无须声张的厚实,一种并不陡峭的高度。
10、爱,有的时候不需要山盟海誓的承诺,但她一定需要细致入微的关怀与问候;爱,有的时候不需要梁祝化蝶的悲壮,但她一定需要心有灵犀的默契与投合;爱,有的时候不需要雄飞雌从的追随,但她一定需要相濡以沫的支持与理解。
11、微笑着,去唱生活的歌谣,不要埋怨生活给予了太多的磨难,不必抱怨生命中有太多的曲折。大海如果失去了巨浪的翻滚,就会失去雄浑;沙漠如果失去了飞沙的狂舞,就会失去壮观。人生如果仅去求得两点一
5诺贝尔和平奖得主