Activity 生命周期

来源:互联网 发布:dnf修改时装软件 编辑:程序博客网 时间:2024/06/06 09:37

每天都都做一点点积累,同理很多故事:愚公移山

这是整体Android的生命周期
看图看emo 效果会好的很多

package com.smzq;

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

public class MainActivity extends Activity {
private static final String TAG=”Mainactivity”;
private Context context=this;
int param=1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//activity 创建被调用
Log.i(TAG, “onCreate called.”);
setContentView(R.layout.activity_main);
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(context,TargetActivity.class);            startActivity(intent);        }    });}

//ACtivity创建或者后台重新回到前台时被调用
@Override
protected void onStart() {
// TODO Auto-generated method stub
super.onStart();
Log.i(TAG, “OnStart called.”);
}
//Activity 从后台重新回到前台时调用
@Override
protected void onRestart() {
// TODO Auto-generated method stub
super.onRestart();
Log.i(TAG, “OnRestrart called”);
}
//Activity 窗口获得失去焦点时被调用,在OnResume之后或Onpause之后
@Override
public void onWindowFocusChanged(boolean hasFocus) {
// TODO Auto-generated method stub
super.onWindowFocusChanged(hasFocus);
Log.i(TAG, “OnWindowFocusChanged called.”);
}
//Activity 被覆盖到下面或者锁屏被调到
@Override
protected void onPause() {
// TODO Auto-generated method stub
super.onPause();
Log.i(TAG, “Onpause called.”);
//有可能在执行完Onpause或OnStop后,系统资源紧张将Activity杀死,所有必要有必要在保存持久数据
}
//退出Activity 或者跳转到Activity时被调用
@Override
protected void onStop() {
// TODO Auto-generated method stub
super.onStop();
Log.i(TAG, “onDestroy called”);
}
//退出当前ACTIVITY时被调用,调用之后Activit就结束了
@Override
protected void onDestroy() {
// TODO Auto-generated method stub
super.onDestroy();
Log.i(TAG, “Ondestroy”);

}/* * Activity被系统杀死杀死时候被调用 * 列如 屏幕方向改变时,Activity被销毁再重建,当前Actity 处于后台,系统资源紧张将其杀死 * 另外 当跳转到其他Activity或者Home回到主屏时也会被调用,系统为了保存当前的view组件状态 * 在Onpause之前被调用 */@Overrideprotected void onSaveInstanceState(Bundle outState) {    // TODO Auto-generated method stub    outState.putInt("param", param);    Log.i(TAG, "onSaveInstanceState .pat param:"+param);    super.onSaveInstanceState(outState);}/* * Activity 被系统杀死后重建时被调用 * 例如  */@Overrideprotected void onRestoreInstanceState(Bundle savedInstanceState) {    // TODO Auto-generated method stub    //这两种情况下onRestoreInstanceState都会被调用,在onStart之后.    super.onRestoreInstanceState(savedInstanceState);    Log.i(TAG, "onRestoreInstanceState call。 get param:"+param);}

}

大家有问题可以加我QQ 互相分享和互相学习

第一次发博客,
每天中午,我会持续更新!!!!!!
可以加群交流 开发android的Club 454890181

0 0