Android activity 概要

来源:互联网 发布:淘宝卖家在哪里看等级 编辑:程序博客网 时间:2024/06/07 03:53

转载请注明本文出自 renxhui 的博客(http://blog.csdn.net/qq_34760508/article/details/70756786),请尊重他人的辛勤劳动成果,谢谢!

Android 开发艺术探索读后笔记

首先activity 的基本的生命周期
顺序排列
(1)onCreate() : 表示activity 正在被创建,在这个方法中我么可以做一些初始化操作

(2)onRestart () : 表示activity 正在重新被启动 , 第一次启动activity不会调用,当activity从不可见变为可见是调用,这种一般是用户行为导致,比如按home键或者打开一个新的activity就会让当前activity暂停调用onPasue和onStop,再重新回到这个activity就会调用onRestart

(3)onStart() : 表示activity正在被启动,即将开始 activity已经可见了,但是还没有出现在前台还无法和用户交互,这个时候可以理解为activity已经可见了,但是我们还看不到

(4)onResume() : 表示activity已经可见,并且出现在前台可以和用户交互,这里比较一下onStart和onResume 的区别,onStart的时候activity还在可见还在后台,onResume可见已经在前台

(5)onPause() : 表示activity正在停止,此时可以做一些,储存数据和停止动画操作,但是不能做太耗时的操作

(6) onStart() : 表示activity即停止,可以做一些稍微重量级的操作但依然不能太耗时

(7)onDestory(): activity即将被销毁 ,activity最后一个回调,我们可以在这里面做一些资源的回收和释放

这里写图片描述

现在有一个问题

问题1 根据描述 onStart onResume和 onPause onStop描述都差不多,具体有什么区别呢

onStart和onStop 是根据activity是否可见来判断的 onResume 和 onPause是根据activity是否在前台判断的

问题2 现有一个activityA 打开一个ActivityB 那么activityA 的onpause 和 activityB的 onResume那个先调用呢

根据源码是 activityA的onPause先调用

我们都知道当旋转屏幕时会导致Activity 销毁重新创建 ,那么有没有可能不让他销毁呢,答案是有的配置activity的confingChanges 就可以避免android:configChanges=”orientation”
一些confingChanges 的基本配置
这里写图片描述

0 0