美文网首页
Android零碎

Android零碎

作者: soyouwantme | 来源:发表于2019-03-01 23:46 被阅读0次

    onSaveInstanceState()

    Android calls onSaveInstanceState() before the activity becomes vulnerable to being destroyed by the system, but does not bother calling it when the instance is actually being destroyed by a user action (such as pressing the BACK key)

    onSaveInstanceState的调用遵循一个重要原则,即当系统“未经你许可”时销毁了你的activity,则onSaveInstanceState会被系统调用,这是系统的责任,因为它必须要提供一个机会让你保存你的数据(当然你不保存那就随便你了)。

    打开一个新的Activity也会调用,但如果启动一个透明的Activity的话,不会执行,只会执行onPause,以及恢复时的onResume。

    onSaveInstanceState方法和onRestoreInstanceState方法“不一定”是成对的被调用的,onRestoreInstanceState被调用的前提是,activity A“确实”被系统销毁了,而如果仅仅是停留在有这种可能性的情况下,则该方法不会被调用,例如,当正在显示activity A的时候,用户按下HOME键回到主界面,然后用户紧接着又返回到activity A,这种情况下activity A一般不会因为内存的原因被系统销毁,故activity A的onRestoreInstanceState方法不会被执行

    另外,onRestoreInstanceState的bundle参数也会传递到onCreate方法中,你也可以选择在onCreate方法中做数据还原。

    • 旋转手机的操作会导致先执行页面的销毁生命周期流,然后执行页面的创建生命周期过程流:
      onPause -> onSaveInstanceState -> onStop -> onDestory
      -> onCreate -> onStart -> onRestoreInstanceState -> onResume

    SavedState

    是TextView的核心状态存储类。

    • .selStart 和 .selEnd 保存光标的起始位置和结束位置,即文本的选中状态
    • .frozenWithFocus 保存焦点信息
    • .error 保存错误信息
    • .editorState 保存可编辑信息

    测量模式

    UNSPECIFIED:
    EXACTLY:
    AT_MOST:

    相关文章

      网友评论

          本文标题:Android零碎

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