activity在android里的作用是用于显示用户界面,即用户看到和进行操作的界面。
androidManifest文件中含有如下过滤器的activity组件为程序默认启动类,当程序启动时系统自动调用它。
<intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter>
activity生命周期图↓
这里的onCreate()(创建)、onStart()(开始)、onResume()(恢复)暂且不说,都是为了run作准备。
onPause()状态和onPause()->onResume()状态
当activity被遮住时(在它之上有另一个透明的activity或Toast、AlertDialog等弹出窗口时),例如从MainActivity跳到了SecondActivity(透明),那么此时的MainActivity就处于onPause()状态;按返回键从SecondActivity回到MainActivity时MainActivity的状态由onPause()->onResume()。当actvity完全看不见时,例如在MainActivity按下home键回到桌面或跳到一个不透明的activity时,此时的MainActivity处于onStop()状态。再次回到MainActivity时由onStop()->onRestart()->onStart()。
onDestroy()状态
消亡
左边的状态
当其它应用需要使用内存,而内存不足时程序会被杀死,需要重新创建
下面实例帮助理解:(从logcat日志里查看其周期)
注:实例中有三个界面,其中SecondActivity是透明的,MainActivity是主界面
1、打开应用进入MainActivity
2、从MainActivity跳到SecondActivity
3、从SecondActivity跳到ThirdActivity
4、从ThirdActivity按返回键回到SecondActivity
5、从SecondActivity按返回键回到MainActivity
6、从MainActivity按home键回到桌面
7、从桌面回到MainActivity
8、从MainActivity按返回键退出应用