activity之间跳转生命周期浅析
来源:互联网 发布:杨贵妃 山口百惠 知乎 编辑:程序博客网 时间:2024/04/30 14:16
由一个activity跳转到别一个activity一般生命周期是:
activity1的oncreate->onstart->onresume->onpause,再接着执行activity2的oncreate->onstart->onresume,接着再执行activity1的:onSaveInstanceState->onstop。
如果这时候按返回键的activity2将会出栈执行方法是onpause,接着activit1执行onrestart->onstart->onresume在下来activity2执行onstop->ondestroy。
这是我的源码示列:
这是activity1的代码
package com.ly.study;
import android.app.Activity;
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;
public class LandActivity extends Activity {
private final String Tag = "LandActivity";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_land);
Log.d(Tag,"onCreate");
}
@Override
protected void onStart() {
super.onStart();
Log.d(Tag,"onStart");
}
@Override
protected void onResume() {
super.onResume();
Log.d(Tag,"onResume");
}
@Override
protected void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
Log.d(Tag,"onSaveInstanceState");
}
@Override
protected void onPause() {
super.onPause();
Log.d(Tag,"onPause");
}
@Override
protected void onStop() {
super.onStop();
Log.d(Tag,"onStop");
}
@Override
protected void onDestroy() {
super.onDestroy();
Log.d(Tag,"onDestroy");
}
@Override
protected void onRestart() {
super.onRestart();
Log.d(Tag,"onRestart");
}
@Override
protected void onRestoreInstanceState(Bundle savedInstanceState) {
super.onRestoreInstanceState(savedInstanceState);
Log.d(Tag,"onRestoreInstanceState");
}
//这是一个按钮点击事件的方法
public void onChangeActivity(View view){
Intent intent = new Intent(this,ViewActivity.class);
startActivity(intent);
}
}
这是activity2的代码
package com.ly.study;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.TextView;
public class ViewActivity extends Activity {
private final String TAG = "LandActivity";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TextView mTextView = new TextView(this);
mTextView.setText("我是自定义action并且加了权限的Activity.");
setContentView(mTextView);
Log.d(TAG,"onCreate-1");
}
@Override
protected void onStart() {
super.onStart();
Log.d(TAG,"onStart-1");
}
@Override
protected void onResume() {
super.onResume();
Log.d(TAG,"onResume-1");
}
@Override
protected void onPause() {
super.onPause();
Log.d(TAG,"onPause-1");
}
@Override
protected void onStop() {
super.onStop();
Log.d(TAG,"onStop-1");
}
@Override
protected void onDestroy() {
super.onDestroy();
Log.d(TAG,"onDestroy-1");
}
@Override
protected void onRestart() {
super.onRestart();
Log.d(TAG,"onRestart-1");
}
}
下面是logcat输出信息,其中带"-1"的表示第二个activity的信息
04-11 11:28:30.510 21919-21919/? D/LandActivity﹕ onCreate
04-11 11:28:30.510 21919-21919/? D/LandActivity﹕ onStart
04-11 11:28:30.510 21919-21919/? D/LandActivity﹕ onResume
04-11 11:29:42.960 21919-21919/? D/LandActivity﹕ onPause
04-11 11:29:43.030 21919-21919/? D/LandActivity﹕ onCreate-1
04-11 11:29:43.030 21919-21919/? D/LandActivity﹕ onStart-1
04-11 11:29:43.030 21919-21919/? D/LandActivity﹕ onResume-1
04-11 11:29:43.475 21919-21919/? D/LandActivity﹕ onSaveInstanceState
04-11 11:29:43.475 21919-21919/? D/LandActivity﹕ onStop
04-11 11:38:38.230 21919-21919/? D/LandActivity﹕ onPause-1
04-11 11:38:38.260 21919-21919/? D/LandActivity﹕ onRestart
04-11 11:38:38.265 21919-21919/? D/LandActivity﹕ onStart
04-11 11:38:38.265 21919-21919/? D/LandActivity﹕ onResume
04-11 11:38:38.365 21919-21919/? D/LandActivity﹕ onStop-1
04-11 11:38:38.365 21919-21919/? D/LandActivity﹕ onDestroy-1
- activity之间跳转生命周期浅析
- Android Activity之间跳转 生命周期变化详解
- 两个Activity之间跳转执行的生命周期
- Activity的生命周期以及两个activity之间跳转的问题
- 两个Activity之间跳转时,生命周期的执行顺序
- Android面试题库---Activity之间跳转时的生命周期变换
- android之旅12 activity之间的跳转与生命周期
- 两个Activity之间跳转时,它们生命周期的执行顺序
- 两个Activity之间跳转时,生命周期的执行顺序
- 两个Activity之间跳转时,生命周期的执行顺序
- Activity的生命周期浅析
- activity生命周期浅析
- Activity的生命周期浅析
- activity跳转生命周期
- Activity跳转生命周期变化
- activity 跳转生命周期研究
- activity跳转生命周期
- 两个Activity跳转生命周期
- 杭电2054(A == B ?)详解
- 81. PHP 后期静态绑定
- jquery实现checkbox的全选与取消
- Filter及FilterChain的使用详解
- 管理杂谈(一)-- 谈谈心态
- activity之间跳转生命周期浅析
- svn冲突解决
- coco2d-iphone: 环境搭建
- ubuntu下qtcreator内配置使用boost以及调试配置
- bootloader功能介绍/时钟初始化设置/串口工作原理/内存工作原理/NandFlash工作原理
- Android getWritableDatabase()和getReadableDatabase区别
- Git Clone 远程分支
- Android布局之View.measure()动态量取高度并设置布局--(例:动态计算评论高度并显示)
- ubuntu linux下安装sublime text 2及破解方法