美文网首页
Activity+多个Fragment模式下进行横竖屏切换的问题

Activity+多个Fragment模式下进行横竖屏切换的问题

作者: 火星局 | 来源:发表于2018-08-22 10:36 被阅读0次

    前言

    1Activity+多Fragment的模式。相信大多数Android app开发人员都不会感到陌生。很常见的界面,比如一些平板的设置界面。就是左边一排按钮,右边区域专门用来放左边按钮点击之后需要展示的界面。

    项目背景

    项目中,在做横竖屏切换的时候,出现了两个问题:
    1.当我切换的时候,右边的显示界面会直接显示第一个碎片的内容。但是我可能之前是在看第三个碎片内容的时候进行的横竖屏切换的;
    2.当我切换的时候,数据会重新加载,导致切换的时候,又出现了等待数据加载的状况。

    解决办法

    • 在Activity的onConfigurationChanged(Configuration newConfig)的方法里面做一些操作。已改变这样的状况。如果出现,这个方法,在做横竖屏切换的时候,并不会被调用。不要着急,请看:
      只有在Activity配置文件配置过android:configChanges="orientation"才会在,横竖屏切换的时候,走onConfigurationChanged(Configuration newConfig)这个方法。
    • 在onSaveInstanceState(Bundle outState)和onRestoreInstanceState(Bundle savedInstanceState)这两个方法倒是会在切换横竖屏的时候被调用。于是我打算在这两个方法里面做点什么,以解决数据的重复加载,已经碎片的轻易销毁的问题。
    • 在准备这么做的时候,想试试,通过在配置文件里面设置Activity的配置能不能达到我要的效果。于是,把之前的项目里面的一个配置android:configChanges="orientation|keyboardHidden|keyboard|screenSize"放进我当前的,包含多个Fragment的Activity的配置当中。一运行,很给力

    相关文章

      网友评论

          本文标题:Activity+多个Fragment模式下进行横竖屏切换的问题

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