Android系统中的Activity简介

Android系统中的Activity简介

写一次博客就是一次成长,回顾一篇博客就是一次升华!


Activity简介

  • ** Activity是任何作为android开发人员都不可能不知道的android系统四大组件(Activity,Service服务,Content Provider内容提供者,BroadcastReceiver广播接收器)之一,在Android开发过程中很多具体的需求都需要根据Activity的不同的生命周期去进行判断和操作执行。

  • ** Activity是一个应用程序组件,提供一个屏幕,用户可以用来交互为了完成某项任务。在一个android应用中,一个Activity通常就是一个单独的屏幕(界面),它上面可以显示一些控件也可以监听并处理用户的事件做出响应。Activity之间通过Intent进行通信。

七个生命周期方法

  • OnCreate()
    创建Activity时被回调,该方法只会被执行一次
  • OnStart()
    启动Activity时被回调
  • OnResume()
    恢复Activity时候被回调,OnStart()方法之后肯定是会调用OnResume()方法
  • OnPause()
    暂停Activity时被回调
  • OnStop()
    停止Activity时被回调
  • OnRestart()
    重新启动Activity时候被回调
  • OnDestory()
    销毁Activity时被回调

特定环境下生命周期方法的调用过程

大致归纳Activity状态情况如下:
  • 活动状态:当前的Activity正在前台运行,用户可以看到。
  • 暂停状态:其他的Activity正在前台运行,该Activity依然可以看到,但是已经不能得到焦点。
  • 停止状态:该Activity不可见,失去焦点
  • 销毁状态:该Activity被干掉,或者该Activity所属的Application被系统终止。
一些环境下Activity生命周期调用流程:
  • 开始启动:依次执行OnCreate() —->OnStart() —->OnResume();
  • 失去焦点:当从该Activity跳转到另外一个Activity的时候,该Activity会失去焦点,在这一过程中执行的生命周期方法是:OnPause()—->OnStop();
  • 该Activity重新获得焦点:依次执行三个方法:OnRestart()—->OnStart()—->OnResume();
  • 销毁(关闭)Activity:依次执行OnPause()—> OnStop()—>OnDestory();

实际代码展示

很简单的一个例子,简单说明下各个方法的调用先后顺序:

public class MainActivity extends AppCompatActivity {
    private static final String TAG = "MainActivity";

    @Override
    protected void onDestroy() {
        Log.d(TAG, "onDestroy");
        super.onDestroy();
    }

    @Override
    protected void onPause() {
        Log.d(TAG, "onPause");
        super.onPause();
    }

    @Override
    protected void onRestart() {
        Log.d(TAG, "onRestart");
        super.onRestart();
    }

    @Override
    protected void onResume() {
        Log.d(TAG, "onResume");
        super.onResume();
    }

    @Override
    protected void onStart() {
        Log.d(TAG, "onStart");
        super.onStart();
    }

    @Override
    protected void onStop() {
        Log.d(TAG, "onStop");
        super.onStop();
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Log.d(TAG, "onCreate");
    }
}

开启应用调用过程如下:
这里写图片描述
该程序失去焦点(比如说按下了HOME键)调用过程如下:
这里写图片描述
重新获得焦点(再次进入了该程序)
这里写图片描述
结束该程序运行
这里写图片描述

简单的DEMO就写到这吧,慢慢的积累android开发的知识,让时光见证成长!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值