`
1140566087
  • 浏览: 560072 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
博客专栏
2c4ae07c-10c2-3bb0-a106-d91fe0a10f37
c/c++ 入门笔记
浏览量:18563
3161ba8d-c410-3ef9-871c-3e48524c5263
Android 学习笔记
浏览量:314460
Group-logo
J2ME 基础学习课程集
浏览量:18792
A98a97d4-eb03-3faf-af96-c7c28f709feb
Spring 学习过程记录...
浏览量:17592
社区版块
存档分类
最新评论

Android 之Activity的生命周期

阅读更多


Activity生命周期:

在系统中Activity被一个Activity栈管理,当一个新的Activity启动的时,将被放置到栈顶,成为运行中的Acrivity,
前一个Activity保留在栈中,不再放到前台,直到新的Activity退出为止;

Activity有四种本质区别的状态:在屏幕前台(栈顶的),叫做活动状态或者运行状态(active or running);如果一个Acrivity
失去了焦点,但依然可见(一个新的非全屏的Activity或者一个透明的Activity 被放置到了栈顶) , 叫做暂停状态(Paused);一个暂停
状态的Activity仍然保持活力(保持所有的状态,成员信息,和窗口管理器保持连接),但是在系统极端低下的时候将被杀掉;如果
一个Activity被另一个Activity完全覆盖掉,叫做停止状态(Stopped);它依然保持所有状态和成员信息,但是它不可见,所以它的
窗口被隐藏,同样当内存不足的时候被系统抹杀掉;Android系统使用两种方式进行删除,要么要求该Activity结束,要么直接关掉
进程。当该Activity要再次显示给用户时,必须重新开始和重置前面的状态;


生命周期的循环中有三个关键的问题:
1、整个的生命周期:从onCreate(Bundle); 开始到onDestroy();结束。Activity在onCreate(Bundle)中设置所有的全局状态
在onDestroy(),释放所有的资源;

2、可见的生命周期:从onStrat(); 开始到onStop();结束。在这段时间,可以看到Activity在屏幕上,尽管有可能不在前台,
不能和用户交互。在这两个接口之间,需要保持显示给用户的UI数据和资源等;

3、前台的生命周期:从onResume();开始到onPause();结束,这段时间里,该Activity处于所有的Activity的最前面,和用户
进行交互。Activity可以经常性的在resumed和paused状态之间切换;


以下接口定了Activity的整个生命周期方法:

	public class Activity extends ApplicationContext{
		protected void onCreate(Bundle icicle);
		protected void onStart();
		protected void onRestart();
		protected void onResume();
		protected void onFreeze(Bundle outIcicle);
		protected void onPause();
		protected void onStop();
		protected void onDestroy();
	
	}

//生命周期代码切换
package com.example.lifetcycle;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

/* Activity生命周期 ,代码说明  */
public class MainActivity extends Activity {

	/* 初始化activity,这儿通常用于调用资源文件中的UI */
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		Log.i("MainActivity", "执行:onCreate()");
		
		/* 生命周期,Activity之间跳转阶段测试 */
		Button btn = (Button) findViewById(R.id.btn);
		btn.setOnClickListener(new OnClickListener() {
			
			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub
				Intent intent = new Intent(MainActivity.this,SecondActivity.class);
				startActivity(intent);
			}
		});
		
	}

	/* 开始阶段 */
	protected void onStart() {
		// TODO Auto-generated method stub
		super.onStart();
		Log.i("MainActivity", "执行:onStart()");
	}

	/* 重启  */
	protected void onRestart() {
		// TODO Auto-generated method stub
		super.onRestart();
		Log.i("MainActivity", "执行:onRestart()");
	}

	/* 运行 */
	protected void onResume() {
		// TODO Auto-generated method stub
		super.onResume();
		Log.i("MainActivity", "执行:onResume()");
	}

	/* 暂停阶段 *//* 使用这准备离开activity的地方  */
	protected void onPause() {
		// TODO Auto-generated method stub
		super.onPause();
		Log.i("MainActivity", "执行:onPause()");
	}
	
	/* 停止阶段 */
	protected void onStop() {
		// TODO Auto-generated method stub
		super.onStop();
		Log.i("MainActivity", "执行:onStop()");
	}
	
	/* 销毁阶段 */
	protected void onDestroy() {
		// TODO Auto-generated method stub
		super.onDestroy();
		Log.i("MainActivity", "执行:onDestroy()");
	}



}





被请求的Activity:
import android.app.Activity;
import android.os.Bundle;

public class SecondActivity extends Activity {

	/* 测试生命周期  */
	protected void onCreate(Bundle savedInstanceState) {
		// TODO Auto-generated method stub
		super.onCreate(savedInstanceState);
	}
	
}

0
0
分享到:
评论

相关推荐

    Android之Activity生命周期

    Android之Activity生命周期,适合新手学习,全面而详细的介绍了Activity的生命周期。

    Android activity生命周期示例

    本示例项目“Android activity生命周期示例”旨在帮助开发者深入理解Activity的生命周期及其各个阶段,这对于优化用户体验和资源管理至关重要。 Activity的生命周期包括以下几个主要状态: 1. **创建(Created)**...

    android Activity生命周期详解(图文)

    总之,深入理解Activity生命周期和其背后的源码逻辑,对于编写高效、响应迅速且用户体验优秀的Android应用至关重要。开发者应熟练掌握这些知识点,以便在设计和调试应用时能得心应手。通过实践和分析ActivityDemo,...

    Android Activity生命周期

    Android Activity 生命周期 Android Activity 生命周期是指 Activity 从创建到销毁的整个过程,该过程中会经历多个状态变化,每个状态变化都会触发相应的回调方法。理解 Activity 生命周期是 Android 开发的基础。 ...

    android Activity生命周期

    Android Studio提供了多种工具帮助开发者调试Activity生命周期。例如: 1. **Android Profiler**:可以实时监控Activity的生命周期状态变化,同时分析内存、CPU和网络使用情况。 2. **Logcat**:通过打印日志,可以...

    Android Activity生命周期测试代码

    有助于深入了解Android Activity生命周期的测试代码,可以结合博客http://blog.csdn.net/freetangxiaoying/article/details/17167819领悟。

    android activity 生命周期详细介绍

    ### 一、Android Activity生命周期介绍 #### 1. onCreate() 当Activity首次创建时被调用,这是初始化Activity的最佳时机。在该方法中通常会执行一些初始化操作,比如设置布局文件、初始化UI组件等。 示例: ``` @...

    Activity生命周期演示

    日志追踪(完成以下六步、明白android的四种状态的生命周期和相互切换): 1、启动app、查看控制台输出,发现依次触发onCreate、onStart、onResume这三个方法 2、点击按钮(弹窗风格的Activity),控制台输出onPause...

    Activity生命周期与启动模式

    **Activity生命周期** Activity的生命周期包括了从创建到销毁的各个阶段,主要有以下7个关键状态: 1. **创建(Created)**:当Activity首次被创建时,会调用`onCreate()`方法。在这里,通常进行初始化工作,如...

    android 组件Activity生命周期

    在Android开发中,理解Activity的生命周期对于管理应用的状态和资源至关重要。Activity是构成Android应用程序的主要构建块之一,它负责提供用户界面并处理与用户交互相关的事件。Activity的生命周期由一系列回调方法...

    Android Activity生命周期,源代码下载

    Android Activity生命周期演示源码,从第一个Activity到第二个Activity,Android Activity形象的说就是一个容器,在里面放置各种控件(按钮,文本,复选框等),就形成了软件的界面~ Activity是可见的。

    android_Activity生命周期

    Activity生命周期是Android开发中至关重要的一环,因为它决定了应用如何响应用户操作和系统事件。理解Activity的生命周期对于编写高效、稳定且用户体验良好的应用至关重要。 Activity的生命周期由多个关键状态组成...

    android下activity生命周期

    android下activity生命周期 生命周期: 回调 描述 onCreate() 这是第一个回调,在活动第一次创建是调用 onStart() 这个回调在活动为用户可见时被调用 onResume() 这个回调在应用程序与用户开始可交互的时候调用 ...

    Android说明Activity生命周期的代码例子

    在ExmActLife这个文件中,很可能包含了不同生命周期方法的示例代码,以及模拟不同启动模式的实验,通过这些实践,开发者可以更好地理解和掌握Activity生命周期的控制,从而优化应用性能和用户体验。实践中,我们应...

    实验一 第一个Android程序和Activity生命周期.zip

    实验一 第一个Android程序和Activity生命周期。实验要求: 1.用工程向导生成第一个Android程序,并在模拟器上运行 注意在新建应用的选择SDK版本时选API 18 2.熟悉Android应用程序的基本文件结构 3.了解使用开发环境...

    测试Android Activity生命周期Demo

    本示例“测试Android Activity生命周期Demo”旨在通过实际代码帮助开发者理解并掌握Activity的生命周期,这对于创建稳定、高效的Android应用至关重要。 Activity的生命周期包括了多个关键状态,如初始化、启动、...

    Android_Activity_生命周期例子

    这是Activity生命周期的第一个回调,通常在这里进行布局加载、初始化变量和设置基本UI等操作。 2. **可见态(Started)**: `onStart()`方法标志着Activity变得对用户可见,但还没有占据屏幕的焦点。此时,Activity...

    Android 中从activity1跳转到activity2再回到activity所经历的生命周期

    ### Android 中从Activity1跳转到Activity2再回到Activity1所经历的生命周期 在Android开发过程中,理解Activity的生命周期对于管理界面状态、处理用户交互以及响应系统事件至关重要。本文将详细解析从一个Activity...

    android的Activity的生命周期

    这些状态之间的转换是Activity生命周期的核心内容。 1. **创建(Created)**: 当Activity首次被创建时,会调用`onCreate()`方法。在这个阶段,开发者应初始化Activity的基本元素,如设置布局、数据绑定等。 2. **...

Global site tag (gtag.js) - Google Analytics