Android入门教程 Activity生命周期
来源:互联网 发布:怎么查淘宝热卖数据 编辑:程序博客网 时间:2024/05/19 12:25
搞懂Activity生命周期对于Android开发非常重要。
Activity生命周期大致可归纳为四种状态:
- 运行态。当前Activity位于前台,用户可见,可获得焦点。
- 暂停态。其他Activity位于前台,该Activity可见但不能获得焦点(比如启动一个对话框风格的Activity)。
- 停止态。该Activity不可见,失去焦点。
- 销毁态。该Activity结束。
在应用过程中,我们会遇到这样几种情况
- 程序启动
- 用户点击了Home键
- 用户跳转了新的Activity
- 用户点开了一个Dialog风格的Activity
- 用户接到电话
- 用户退出程序
我们一个一个来做实验,逐个看控制台打印情况
1、程序启动
12-23 06:17:18.318 19808-19808/? D/ActivityLife﹕ ---onCreate---12-23 06:17:18.355 19808-19808/? D/ActivityLife﹕ ---onStart---12-23 06:17:18.355 19808-19808/? D/ActivityLife﹕ ---onResume---
2、用户点击了Home键
12-23 06:19:10.246 19808-19808/? D/ActivityLife﹕ ---onPause---12-23 06:19:11.946 19808-19808/? D/ActivityLife﹕ ---onStop---
返回应用
12-23 06:19:41.675 19808-19808/? D/ActivityLife﹕ ---onRestart---12-23 06:19:41.675 19808-19808/? D/ActivityLife﹕ ---onStart---12-23 06:19:41.675 19808-19808/? D/ActivityLife﹕ ---onResume---
3、用户跳转了新的Activity
12-23 06:20:27.545 19808-19808/? D/ActivityLife﹕ ---onPause---12-23 06:20:28.465 19808-19808/? D/ActivityLife﹕ ---onStop---
4、用户点开了一个Dialog风格的Activity
12-23 06:40:16.485 19993-19993/? D/ActivityLife﹕ ---onPause---
返回
12-23 06:40:24.776 19993-19993/? D/ActivityLife﹕ ---onResume---
5、用户接到电话
12-23 06:41:23.625 19993-19993/? D/ActivityLife﹕ ---onPause---12-23 06:41:33.720 19993-19993/? D/ActivityLife﹕ ---onStop---
6、用户退出程序
12-23 06:43:31.325 19993-19993/? D/ActivityLife﹕ ---onPause---12-23 06:43:31.720 19993-19993/? D/ActivityLife﹕ ---onStop---12-23 06:43:32.120 19993-19993/? D/ActivityLife﹕ ---onDestroy---
主程序代码
package com.android.crazy.activitylifetest;import android.app.Activity;import android.app.AlertDialog;import android.content.DialogInterface;import android.content.Intent;import android.support.v7.app.ActionBarActivity;import android.os.Bundle;import android.util.Log;import android.view.Menu;import android.view.MenuItem;import android.view.View;import android.widget.Button;/** * Jet * Activity生命周期测试 */public class MainActivity extends Activity { private String TAG = "ActivityLife"; private Button newBtn; private Button alertBtn; private Button finishBtn; @Override protected void onCreate(Bundle savedInstanceState) { Log.d(TAG, "---onCreate---"); super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); newBtn = (Button)findViewById(R.id.newBtn); alertBtn = (Button)findViewById(R.id.alertBtn); finishBtn = (Button)findViewById(R.id.finishBtn); newBtn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(MainActivity.this, SecondActivity.class); startActivity(intent); } }); alertBtn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this); builder.setTitle("TIPS"); builder.setMessage("Hello there."); builder.setPositiveButton("DlgActivity", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { Intent intent = new Intent(MainActivity.this, DialogStyleActivity.class); startActivity(intent); } }); builder.setNegativeButton("CANCEL", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.dismiss(); } }); builder.create().show(); } }); finishBtn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { MainActivity.this.finish(); } }); } @Override protected void onStart() { Log.d(TAG,"---onStart---"); super.onStart(); } @Override protected void onResume() { Log.d(TAG,"---onResume---"); super.onResume(); } @Override protected void onPause() { Log.d(TAG,"---onPause---"); super.onPause(); } @Override protected void onRestart() { Log.d(TAG,"---onRestart---"); super.onRestart(); } @Override protected void onStop() { Log.d(TAG,"---onStop---"); super.onStop(); } @Override protected void onDestroy() { Log.d(TAG,"---onDestroy---"); super.onDestroy(); }}
0 0
- Android入门教程 Activity生命周期
- 【Android】【Activity生命周期】Activity生命周期
- Android activity的生命周期
- Android Activity 生命周期
- Android:Activity的生命周期
- Android 之 Activity 生命周期
- Android Activity生命周期
- android之activity生命周期
- Android Activity生命周期总结
- Android 之 Activity 生命周期
- Android Activity的生命周期
- Android Activity的生命周期
- android中的activity生命周期
- Android---Activity生命周期状态
- Android中Activity生命周期
- Android Activity的生命周期
- Android activity的生命周期
- Android---Activity生命周期状态
- case: 初始化操作由case标签跳过 错误解决办法:加{}
- 下拉树编辑风格 - 报表系统
- 基本套接字编程(1) -- tcp篇
- 第四章--INI配置
- 进程基础-进程的创建、管理与调度、终止
- Android入门教程 Activity生命周期
- unity3d-准备工作 - VS2013
- c语言
- 《sed & awk》读书笔记之 awk 篇
- 设计模式C++实现--享元模式
- 关于Codis的动态扩容
- nginx扩展模块,不能正常显示FastDfs上传的图片问题
- Application中定义公用数据
- udp如何实现可靠性传输?