美文网首页
Android 02.Activity

Android 02.Activity

作者: samtake | 来源:发表于2019-10-09 02:55 被阅读0次

    I-重识Activity

    Introduction to Activities

    Activity生命周期.png

    单个Activity的生命周期

    创建一个Activity时,依次调用onCreate() onStart() onResume(),此时处于可见状态,当让app处于后台则会依次调用onPause() onStop() onDestroy()

    onRestart()在Activity被销毁之前,系统调用该回调,从而让Activity回到可见状态。

    多个Activity的生命周期交互

    让当前Activity执行onPause()之后,才会打开下一个Activity。

    Activity生命周期交互设计思想三问

    • 为什么先暂停当前显示的Activity?
    • 为什么先执行要打开的Activity的onCreate() onStart() onResume()
    • 在执行新的Activity时,为什么不执行当前Activity的onPause() onStop()

    Activity的横竖屏切换

    生命中后期应用场景

    Activity启动的两种方式

    • 直接启动
    • 匿名启动

    启动系统常见的Activity

    • 启动浏览器
    • 启动相册
    • 发送短信
    • 启动电话界面

    II-深入Activity

    Activity数据交换

    • Bunndler传递数据
    intent.putExtra("name","nate");
    --->
    intent.getStringExtra("name");
    
    bundle.putString("name","nate");
    intent.putExtras(bundle);
    ---->
    intent.getStringExtra("name");
    
    //Person 对象传递
    bundle.putSerializable("person",person);
    intent.putExtras(bundle);
    ----->
    Person person = (Person)intent.getSerializableExtra("person");
    
    //Bitmap传递
    Bitmap bitmap = BitmapFactory.decodeResource(getResources().R.drawable.ic_launcher);
    bundle.putParcelable("bitmap",bitmap);
    bundle.putExtras(bundle);
    ----->
    Bitmap bitmap = intent.gettParcelable("bitmap");
    
    • 传递大数据异常TransationTooLargeException

    Activity中的任务栈

    • Task
    • Back Stack

    通过adb命令查看Activity任务

    Activity启动模式(launchMode)

    standard
    singleTop
    singleTask
    singleInstance

    III-精通Activity

    FrameWork层的类介绍-ActivityThread

    Application Thread相关类介绍

    Context类介绍

    Activity、Window、WindowManager

    相关文章

      网友评论

          本文标题:Android 02.Activity

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