3

首先我不想合并布局,因为主要活动是渲染 3D 场景,所以没有空间去做。

我想合并这两个活动的原因是当我调用设置活动时,主要活动将进入睡眠状态。当我完成设置并唤醒主要活动时,上下文会丢失,它必须重新创建表面。由于场景数据很大,所以会浪费很多时间。所以我想要的是保持主要活动没有运行onPause并完成设置。

顺便说一句,设置是关于设置距离和投影大小的值。它需要一些复选框和搜索栏。

如果您认为PreferenceFragment是解决此问题的方法,请教我如何在 menuoptions 中使用它?

我是安卓新手。提前致谢。

4

1 回答 1

0

合并布局并不排除您尝试执行的操作。您可以通过创建具有两个子级(布局本身)的更高级别的 FrameLayout 来合并它们。然后,您的代码确保一次只能看到这两个孩子中的一个。

例如...

<FrameLayout android:id="@+id/NewRootLayout" ...>
    <LinearLayout android:id="@+id/MyPreferencesLayout" android:visibility="gone" ...>
        ....
    </LinearLayout>

    <WhateverLayout android:id="@+id/MyPrimaryLayout" android:visibility="visible" ...>
        ....
    </WhateverLayout>
</FrameLayout>

现在在代码中,当您想要从一种布局切换到另一种布局的错觉时,您只需执行以下操作:

MyPreferencesLayout.setVisibility(View.VISIBLE);
MyPrimaryLayout.setVisibility(View.GONE);

(从 UI 线程中)。

于 2012-11-22T12:09:37.347 回答