美文网首页Android知识
Android Activity 的流程和基本概念

Android Activity 的流程和基本概念

作者: 遗忘的流逝 | 来源:发表于2016-10-03 15:43 被阅读228次
       # Android Activity 的流程和基本概念
    

    在java 中 所有程序的入口时main()函数,而对于android来说,所以程序的开始都是onCreate().一般在android四大组件中,Activity 是最为必要和重要的一个UI展示活动。

    An activity is a single, focused thing that the user can do. Almost all activities interact with the user, so the Activity class takes care of creating a window for you in which you can place your UI with[setContentView(View).
    Android 系统会通过调用对应于其生命周期中特定阶段的特定回调方法在Activity实例中启动代码。

    Activity 是一个显示UI的组件,所有控件的new 或者findViewById()中获得组件的控制权进行各种onClick,以及各种动画操作,包括view的更新是必须在ui主线程中的,在Activity中onCreate()的线程中就是主线程,当然你也可以在不同的Activity状态中对view进行操作。


    activity_lifecycle.png

    如图,图中是来自google的android activity 的run 的一个示意图,从中我们可以很明白得看见一个activity的几个状态。
    并不是所以的activity都会有这几个循环,可以这么说所有的activity都有这几个函数,到activity这个线程结束的这几个状态都会经过,除了onRestart().
    onRestart()是什么时候实现的呢?


    IPW8IHYQ`SHA6Y{2Z(5HNXO.png

    我做了个demo,只要你运行了activity,并用home键,再进入app就会调用这个函数。

    Called after your activity has been stopped, prior to it being started again.Always followed by onStart()。

    官方的定义是你的anctivity已经调用了onStop(),但没有杀死又重新启动了这个activity。
    我的demo中少了个onResume()这个函数。
    onResume()这个函数是发生在和用户进行相应的交互的时候,通常是在onPause()后会调用的。而onPause()正如这个英文单词,在这个阶段activity已经暂停了。

    Called when the system is about to start resuming a previous activity.
    这个是他官方的调用时机。在这个状态下,他是可以回到之前的状态或者将activity进入到不可见的状态。
    在这个以前的状态,activity都是no killable,之后便都是yes。
    而进行状态的某种数据保留或者存储,在onPause中保留执行存储代码是最合适的如果是必须要在activity快kill的时候。

    在下只是一个新手,如有错处请指出 谢谢

    相关文章

      网友评论

        本文标题: Android Activity 的流程和基本概念

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