第四课,对android中Activity生命周期的讲解。
package com.myclover.life;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.DialogInterface;
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的生命周期
* @author myclover
* </br>
* 执行流程如下:
* 在应用在启动时先执行onCreate,在界面可见但是不可点击时执行onStart,在界面可见并可操作时执行onResume,
* 当界面再次不可点击时执行onPause,在界面不可见时执行onStop,如果调用了finish(),那么接着会执行onDestroy
*
* 该测试程序执行的结果为:
* execute first onCreate---->execute first onStart---->execute first onResume---->(跳转)
* execute first onPause---->execute second onCreate---->execute second onStart---->
* execute second onResume---->execute first onStop---->execute first onDestroy---->(返回)
* execute second onPause---->execute first onCreate---->execute first onStart---->
* execute first onResume----> execute second onStop---->execute second onDestroy
*/
public class LifeDemoActivity extends Activity {
private static final String TAG = "LifeDemoActivity";
@Override
public void onCreate(Bundle savedInstanceState) {
Log.i(TAG, "execute first onCreate!");
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button redirectBtn = (Button)findViewById(R.id.redirectBtn);
Button toThirdBtn = (Button)findViewById(R.id.toThirdBtn);
redirectBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//弹出确认选择框
Dialog dialog = new AlertDialog.Builder(LifeDemoActivity.this)
//设置弹出框标题
.setTitle(R.string.title)
//设置弹出框提示信息
.setMessage(R.string.message)
//设置确定按钮
.setPositiveButton(R.string.sure, new DialogInterface.OnClickListener() {
//点击确定按钮执行的方法
@Override
public void onClick(DialogInterface dialog, int which) {
Intent intent = new Intent();
//设置Activity的跳转
intent.setClass(LifeDemoActivity.this, SecondActivity.class);
//启动新Activity
LifeDemoActivity.this.startActivity(intent);
//销毁当前Activity
LifeDemoActivity.this.finish();
Log.i(TAG, "redirect to second activity!");
}
})
//设置取消按钮
.setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
//点击取消按钮执行的方法
@Override
public void onClick(DialogInterface dialog, int which) {
Log.i(TAG, "click cancel !");
}
}).create();
dialog.show();
}
});
toThirdBtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent();
//设置Activity的跳转
intent.setClass(LifeDemoActivity.this, ThirdActivity.class);
//启动新Activity
LifeDemoActivity.this.startActivity(intent);
//销毁当前Activity
// LifeDemoActivity.this.finish();
Log.i(TAG, "redirect to third activity!");
}
});
}
@Override
protected void onStart() {
Log.i(TAG, "execute first onStart!");
super.onStart();
}
@Override
protected void onRestart() {
Log.i(TAG, "execute first onRestart!");
super.onRestart();
}
@Override
protected void onResume() {
Log.i(TAG, "execute first onResume!");
super.onResume();
}
@Override
protected void onPause() {
Log.i(TAG, "execute first onPause!");
super.onPause();
}
@Override
protected void onStop() {
Log.i(TAG, "execute first onStop!");
super.onStop();
}
@Override
protected void onDestroy() {
Log.i(TAG, "execute first onDestroy!");
super.onDestroy();
}
}
分享到:
相关推荐
andriod生命周期完整例子.是android开发中入门代码,对理解android 软件中事件的执行顺序有帮助。
Android_Activity_生命周期例子.主要通过几个activity 相互调用 解释生命周期,应该对大家了解android activity 的生命周期有所帮助
一个android的生命周期的例子,包括生命周期的方法
android生命周期测试,为了解决程序运行过程中自动黑屏,返回时程序崩溃的问题写了这个例子,研究不同操作情况下的生命周期
Android说明Activity生命周期的代码例子。用于演示Activity组件从创建到销毁的完整生命周期,以及Activity在不同栈方式下的置换算法。
Android说明Service生命周期的代码例子。用于演示Service组件从创建到销毁的完整生命周期,以及IntentService的使用例子。
用于匹配Android生命周期博文的测试例子
Android官方activity-lifecycle生命周期例子,参考网页: http://developer.android.com/training/basics/activity-lifecycle/index.html 方便了解Activity生命周期,提供了非常形象的说明。生动讲解。可以结合官网...
android学习之碎片的生命周期例子,仅供大家学习参考android学习之碎片的生命周期例子,仅供大家学习参考android学习之碎片的生命周期例子,仅供
三个activity之间进行切换,看看activity是怎么运行的,在后台打印activity的调用方法
自定义控件在Android开发中是非常重要的,只有回了自定义控件,才能知道view的内部机制,我今天写了一个例子,测试了一下view的生命周期,把demo上传到这里和大家交流学习
这篇文档是我在学习android 时对于生命周期的一点理解,一共使用了两个例子,内附例子代码,布局文件代码放上去,因为布局非常简单啦。。。
动手学Android之七——Activity生命周期例子程序,欢迎大家下载
主要介绍了Android编程中的四大基本组件与生命周期,结合实例形式较为详细的分析了Android四大组件及生命周期的相关概念与使用技巧,需要的朋友可以参考下
#Android Lifecycle如果您不熟悉android活动中的生命周期概念,请。 当您开发具有许多类的真实世界应用程序时,很有可能在活动的生命周期事件发生时需要做一些事情。 例如,在发生“销毁”事件时释放一些资源或从...
Android说明Broadcast的代码例子。用于演示Broadcast组件从创建到销毁的完整生命周期,以及ActionBar中对Tab页的操作介绍。
android 包内调用本地服务。外加activity生命周期,打的log。
循环生命活动机器人 理解活动生命周期的例子
NestedFragmentsAndroid 简单的例子演示了android fragment的生命周期,在方向改变时使用 appcombat-v7 库
android 本地服务(local service)使用intent启动服务。外加activity的生命周期的log