美文网首页Android 初级开发工程师
Android四大组件之Activity知识梳理

Android四大组件之Activity知识梳理

作者: Millie_tl | 来源:发表于2018-06-30 14:09 被阅读0次
    懵懂的小菜鸟.png
    示意图.png

    一. Activity定义
    Activity 是Android的重要组成部分,是四大组件之一,简单来说,它是用户可以看的见的,进行交互的界面。app界面的美观与否直接影响用户的体验感受。

    二 . Activity生命周期

    生命周期流程图.png

    一个最简单的完整的Activity生命周期顺序回调过程:onCreate -> onStart -> onResume -> onPause -> onStop -> onDestroy。


    生命周期方法.png

    Ⅰ. 当启动Activity后,依次执行onCreate()–>onStart()–>onResume(),此时Activity已进入运行状态并在前台显示。


    logcat.png

    Ⅱ . 当Activity创建完成后,点击Home键回到主界面时,(Activity不可见)–>onPause()–>onStop()依次被调用。


    logcat1.png

    Ⅲ . 当点击Home键回到主界面后,再次点击App回到Activity时,依次执行onRestart()–>onStart()–>onResume()方法。


    logcat2.png

    Ⅳ.当点击Back键回退时,Activity将被销毁 ,依次执行 onPause()–>onStop()–>onDestroy()方法。

    logcat3.png

    Ⅴ.当在原有的Activity的基础上启动新的Activity时,原Activity生命周期执行方法顺序为–>onPause()–>onStop(),新的Activity 依次执行onCreate()–>onStart()–>onResume()。

    logcat4.png

    这里SecondActivity生命周期方法是在原Activity的onPause方法执行完成后才被回调,所以onPause方法不能做耗时操作。

    三 . Activity启动模式

    启动模式.png

    Activity以任务栈的形式来管理,并采用“后进先出”的栈结构


    任务栈.png
    1. standard : 默认的Activity启动模式,Activity每启动一次,就会创建一个新的实例并置于栈顶位置。

    2. singleTop : 新建一个Activity,如果这个Activity处于栈顶就直接重用该实例(不重建新的实例);
      如果这个Activity不在栈顶,那么就新建一个实例置于栈顶。

    3. singleTask : 新建一个Activity,如果没有需要的栈,就创建需要的栈并创建Activity实例置于栈内;
      如果有需要的栈并且栈内也存在该Activity的实例那么就将该实例置于栈顶;
      如果有需要的栈且栈内没有该Activity的实例,那么就新建实例并置于栈顶位置。

    4. singleInstance : 开启一个新的任务栈,把要激活的Activity放置到新的任务栈里,这个任务栈里有且只有一个实例,任何应用再次激活该Activity时都会重用该栈中的实例 。
      模式设置方式:在AndroidManifest.xml文件中,


      设置方式.png

    四 . Activity之间数据传递

    示意图.png
    1. Intent传递数据
    Intent传递数据.png intent获取数据.png
    1. Bundle传递数据
    bundle传递数据.png bundle获取数据.png
    1. 使用序列化对象传递数据
    bean类.png

    第一个Activity:

    放数据.png

    第二个Activity:

    接收数据.png
    1. 使用静态变量传递数据
      第一个Activity:
    设置数据.png

    第二个Activity:

    静态变量.png
    1. 使用onActivityResult传递数据
      第一个Activity:
    onActivityResult.png

    第二个Activity:

    放数据.png

    相关文章

      网友评论

        本文标题:Android四大组件之Activity知识梳理

        本文链接:https://www.haomeiwen.com/subject/iwpoyftx.html