【问题标题】:How to change layout of fragment without recreating it?如何在不重新创建片段的情况下更改片段的布局?
【发布时间】:2018-02-04 19:15:02
【问题描述】:

我有一个Activity,它监听方向改变以防止它在我们旋转屏幕时重新创建。

我有一些Fragment 附加到这个Activity。

当屏幕方向改变时,我的Activity 不会重新创建,当然我的Fragment 也不会重新创建。但我想改变它的布局。

如何更改Fragment的布局而不重新创建它?

【问题讨论】:

    标签: android layout fragment screen orientation


    【解决方案1】:

    您应该为每个布局使用资源修饰符。例如,仅应在横向中使用的布局应转到 res/layout-land 文件夹

    编辑 1 试试这个

    class MyFragment extends Fragment {
        void someMyVoid() {
             getFragmentManager()
                     .beginTransaction()
                     .replace(R.id.layout, new MyFragment)
                     .commit();
        }
    }
    

    【讨论】:

    • 我试过了。但这无济于事。因为没有调用onCreateView 方法来重新膨胀新布局
    • 应该被调用。因为片段驻留在活动中,并且在重新创建活动时重新创建片段。给我们一些代码
    • 查看我的更新答案。我的activity 没有重新创建,因为它监听 configChange
    猜你喜欢
    • 2021-12-04
    • 2014-07-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-08
    • 2012-12-29
    相关资源
    最近更新 更多