Android基础知识Activity

                                   Activity----- 包含用户界面负责与用户进行交互的组件。

 

一、Activity的状态:

(1).运行状态:当一个活动位于栈顶的时候,该活动就处于运行态,系统最不愿意回收的就是运行态的Activity,因为这样会造成特别差的用户体验。

(2).暂停状态:当一个活动不在处于栈顶,但是仍然可见的时候,该活动就处于暂停状态,(并不是所有的活动都会充满整个屏幕),系统也不愿意去回收这种活动,只有在内存极低的情况下才会去回收。

(3).停止状态:当一个活动不再处于栈顶,且不可见的时候,该活动就处于停止状态,但是系统还会为该活动保存相应的状态和成员变量,当其他地方需要内存的时候,该活动被回收。

(4)销毁状态:当一个活动从栈中移除的时候,该活动就处于销毁状态,系统最倾向于回收该类活动,保证手机内存充足。

二、活动的启动模式

                       Android是使用任务(Task)来管理活动的也被称为返回栈,栈是一种后进先出的数据结构。

活动的启动模式有四种:

(1).standard 模式:也是所有Android程序活动的默认启动模式,不论栈顶是否有需要启动的活动的实例,每次启动活动都会在栈顶创建一个新的活动实例。

(2).singleTop 模式:在启动活动的时候发现该活动位于栈顶,就不在创建新的实例,直接使用该实例。

(3).singleTask 模式:在整个任务栈中只有一个活的实例。

(4).singleInstance 模式:创建一个单独的返回栈,让所有用到该活动的程序都来这个单独栈里访问和使用该活动。

三、活动生命周期

                                         Activity中定义了七个回调函数,覆盖了活动的所有生命周期

(1).onCreate():活动第一次创建的时候调用

(2).onStart():活动由不可见变为可见的时候调用

(3).onResume():活动准备好和用户交互的时候调用,一定位于栈顶

(4)onPause():准备去启动另一个活动或者恢复之前的活动的时候调用,执行速度回很快,需要在该方法中释放CPU资源,保存关键数据

(5).onStop():活动完全不可见的时候调用

(6).onDestroy():活动被销毁之前调用

(7).onRestart():活动由停止状态变为运行态时调用

 

                                                            Activity的生命周期示意图

四、活动中数据保存和恢复

           onSaveInstanceState() 该方法在活动回收前一定会被调用,所以可以重写该方法将待保存的数据进行保存

@Override
protected void onSaveInstanceState(Bundle outState) {
    super.onSaveInstanceState(outState);
  //利用Bundle 来保存
}
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
//在这取到保存的数据

}

五、启动活动的写法

待启动的Activity中加入如下函数:

public  static  void  actionStart(Context context,String data1,String data2){
    Intent intent=new Intent(context,xxxActivity.class);
    intent.putExtra("", data1);
    intent.putExtra("", data2);
    context.startActivity(intent);        
}

需要启动活动的Activity调用该方法:

xxxActivity.actionStart(MyActivity.this,"data1","data2");

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值