【问题标题】:Preference Fragment overlaps BottomNavigationViewPreference Fragment 与 BottomNavigationView 重叠
【发布时间】:2021-12-16 15:37:21
【问题描述】:

我有 4 个片段,最后一个片段是 Setting Fragment using Preference Fragment:

public class SettingFragment extends Fragment {

   ...

    @Override
    public void onActivityCreated(Bundle savedInstanceState) {
        super.onActivityCreated(savedInstanceState);
        getActivity().getFragmentManager().beginTransaction()
                .replace(android.R.id.content, new MyPreferenceFragment())
                .commit();
    }

   ...

    public static class MyPreferenceFragment extends PreferenceFragment {

        public MyPreferenceFragment(){}

        @Override
        public void onCreate(@Nullable Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            addPreferencesFromResource(R.xml.preferences);
        }
    }

}

我的问题 对于前 3 个片段,底部导航栏仍然有效 但在最后一个片段是设置片段,我的片段视图与我的底部导航视图重叠。我不能再点击底部导航视图了。它依赖于对片段视图中项目的点击

我该如何解决?

【问题讨论】:

  • 你为什么在另一个Fragment中使用PrefereceFragment
  • @cmak 因为我想对 Settings 使用首选项,而其他都是 Fragment,我需要在 SettingFragment 中使用 PreferenceFragment。

标签: java android


【解决方案1】:

如果使用 androidx 库,您应该使用 PreferenceFragmentCompat

public class SettingsFragment extends PreferenceFragmentCompat {
    @Override
    public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
        setPreferencesFromResource(R.xml.preferences, rootKey);
    }
}

如果只有一个屏幕,则不需要父 Fragment,而是直接使用 Preference Fragment。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-11-29
    • 2018-06-03
    • 2018-01-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-24
    • 1970-01-01
    相关资源
    最近更新 更多