private void buildSearchIndex() {
        synchronized (searchIndex) {
            if (!searchIndex.isEmpty()) {
                return;
            }
        }
        final ArrayList<BasePreferenceFragment> fragments = new ArrayList<>();
        fragments.add(new PreferenceServicesFragment().setIcon(R.drawable.settings_cloud));
        fragments.add(new PreferenceAppearanceFragment().setIcon(R.drawable.settings_eye));
        fragments.add(new PreferenceCachedetailsFragment().setIcon(R.drawable.settings_details));
        fragments.add(new PreferenceMapSourcesFragment().setIcon(R.drawable.settings_map));
        fragments.add(new PreferenceMapContentBehaviorFragment().setIcon(R.drawable.settings_map_content));
        fragments.add(new PreferenceLoggingFragment().setIcon(R.drawable.settings_pen));
        fragments.add(new PreferenceOfflinedataFragment().setIcon(R.drawable.settings_sdcard));
        fragments.add(new PreferenceNavigationFragment().setIcon(R.drawable.settings_arrow));
        fragments.add(new PreferenceSystemFragment().setIcon(R.drawable.settings_nut));
        fragments.add(new PreferenceBackupFragment().setIcon(R.drawable.settings_backup));

        for (BasePreferenceFragment f : fragments) {
            f.setSearchdataCallback(this::collectSearchdataCallback);
        }
        final FragmentTransaction t = getSupportFragmentManager().beginTransaction();
        for (Fragment f : fragments) {
            t.add(preferenceContentView, f);
        }
        t.commit();

        // in dual column mode open services section on start
        if (isInDualPaneMode()) {
            openRequestedFragment(getString(R.string.preference_screen_services), null);
        } else {
            getSupportFragmentManager()
                    .beginTransaction()
                    .replace(preferenceContentView, new PreferencesFragmentRoot())
                    .commit();
        }
    }
This method sets the fragment given by its base key,
and optionally starts scrolling to a preference identified by its key
main/src/main/java/cgeo/geocaching/settings/SettingsActivity.java