(安卓偏好)用于替换活动的所有内容的片段



我有一个包含多个按钮和文本元素的活动。这些元素驻留在活动本身中,而不是片段中。

但是,我希望能够用首选项屏幕片段替换所有这些内容。如果不将我想要删除的 Activity 中的其余内容放入片段中,然后调用 .replace() 函数,这是否完全可能?

目前我做

getFragmentManager().beginTransaction() 
                    .replace(android.R.id.content, new ProfileFragment())
                    .commit();

但这只会将配置文件片段放在我的活动之上。它覆盖它。所以我看到并且可以与ProfileFragment进行交互,但我也看到了下面的Acitvity的其余内容。

再次重申:我希望能够将我的活动的所有内容替换为首选项屏幕片段。如果不将我想要删除的 Activity 中的其余内容放入片段中,然后调用 .replace() 函数,这是否可能?

如果您只想隐藏活动内容,请按以下步骤设置首选项片段的背景颜色(使用 PpreferencesFragmentCompat 测试)。

@Override
public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
    super.onViewCreated(view, savedInstanceState);
    view.setBackgroundColor(Color.WHITE);
}

请注意,设置通常会在新活动中打开(如在 Google 应用中)。

如果您使用的是 PreferenceFragmentCompat,这些 SO 答案可能会对您有所帮助。

样式问题:https://stackoverflow.com/a/32108439/2627680

打开内部首选项屏幕:https://stackoverflow.com/a/32540395/2627680

最新更新