您的位置:首页 > 移动开发 > Android开发

Activity生命周期

2016-03-22 23:06 549 查看
                                                                       


activity是Android四大组件之一,主要和用户进行交互,使用activity时会回调activity的一些方法。activity的运行模式分为正常模式和异常模式。当用户在android手机上点击一个应用程序后这个应用程序就会被启动。每一个应用程序都会有一个application对象,当应用程序启动是这个application对象就会被创建。在这个application对象创建后,应用程序就开始创建activity。

      activity是一个容器,在这个容器上可以定义UI,但是activity并不是UI,activity上会有一个window对象,在window对象上可以定义若干个view对象,也就是形形色色的UI。在activity的oncreate方法中首先会调用setcontentview方法,如果不调用,activity启动后只有一个黑乎乎的窗体。activity上还有很多的业务逻辑,所以说activity是一个容器。

     创建一个activity首先要重写oncreate方法,创建完一个activity会执行onstart方法,这时的activity变得可见。当activity被暂停之后通过onresume方法唤醒activity。onstop方法在activity停止时调用,在销毁时会执行ondestoty方法。

        在系统资源紧张时,activity有可能被杀死,按照进程的优先级杀死进程,如果此时activity作为一个前台进程,基本上是不会被杀死的。 在activity意外停止(系统故障或者被杀死)时,会使用Bundle保存数据,当activity恢复时,可用使用Bundle恢复数据。保存数据可用重写以下两个方法

@Override

    protected void onRestoreInstanceState(Bundle savedInstanceState) {

        Log.v(TAG, savedInstanceState.getString("data"));

        super.onRestoreInstanceState(savedInstanceState);

        

    }

   

    @Override

    protected void onSaveInstanceState(Bundle outState) {

        outState.putString("data", "example");

        super.onSaveInstanceState(outState);

       

    }

       恢复数据时直接从Bundle对象拿数据。有一个有意思的现象就是对手机进行反转,也就是切换横屏和竖屏时,activity会结束,然后重新创建。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android