欢迎访问移动开发之家(rcyd.net),关注移动开发教程。移动开发之家  移动开发问答|  每日更新
页面位置 : > > > 内容正文

从零开始学android(ACtivity的生命周期.三十九.)

来源: 开发者 投稿于  被查看 22813 次 评论:159

从零开始学android(ACtivity的生命周期.三十九.)


 

意图是指两个UI主界面的转换,要想了解意图就必须学习ACtivity的生命周期

默认在UI界面显示的为运行为运行状态,而在后台的为onPause方法

主线:

OnCreate()--> OnStart() --> OnResume() -->OnPause()-->OnStop ()-->OnDestroy()

副线:

OnCreate()--> OnStart() --> OnResume() -->OnPause()-->OnStop ()-->OnRestart() -->OnStart() OnResume() -->OnPause()-->OnStop ()-->OnDestroy()

\

接下来我们用一个例子来看一下Activity的声明周期

默认创建一个android工程里面会默认给你创建一个 OnCreate方法

 

下面我们分别来复写

 

        protected void onCreate(Bundle savedInstanceState);        
        protected void onStart();           
        protected void onRestart();        
        protected void onResume();       
        protected void onPause();        
        protected void onStop();        
        protected void onDestroy();
用一个例子来卡看它的生命周期

 

 

 

package com.example.activity;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        System.out.println(onCreate-----Activity建立-----);
    }

	@Override
	protected void onResume() {
		// TODO Auto-generated method stub
		super.onResume();
		System.out.println(onResume-----Activity显示到主UI-----);
	}

	@Override
	protected void onDestroy() {
		// TODO Auto-generated method stub
		super.onDestroy();
		System.out.println(onDestroy-----Activity销毁,无法再重新启动-----);
	}

	@Override
	protected void onPause() {
		// TODO Auto-generated method stub
		super.onPause();
		System.out.println(onPause-----Activity暂停退出到栈底-----);
	}

	@Override
	protected void onRestart() {
		// TODO Auto-generated method stub
		super.onRestart();
		System.out.println(onRestart-----Activity进入重新启动队列----);
	}

	@Override
	protected void onStart() {
		// TODO Auto-generated method stub
		super.onStart();
		System.out.println(onStart-----Activity重新启动-----);
	}

	@Override
	protected void onStop() {
		// TODO Auto-generated method stub
		super.onStop();
		System.out.println(onStop-----Activity停止-----);
	}
    
}
启动工程时

 

 

\

按模拟器上的主菜单键

 

\

 

点击安装的程序重新返回程序

\

 

 

按退出键 退出程序

 

\
 

 

实际上 不同Activity的UI显示就是一个堆栈的过程,将栈顶的Activity进行显示

 

用户评论