Problem mit der Einbindung/Anzeige des PreferenceFragment

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Problem mit der Einbindung/Anzeige des PreferenceFragment

    Hallo Zusammen,

    ich beginne derzeit mit dem Einbinden meiner ersten "PreferenceFragment" und habe hierbei folgendes gemacht:

    SettingsFragment.Java

    Quellcode

    1. package com.example.parkhilfeclient;
    2. import android.os.Bundle;
    3. import android.preference.PreferenceFragment;
    4. public class SettingsFragment extends PreferenceFragment {
    5. @Override
    6. public void onCreate(Bundle savedInstanceState) {
    7. super.onCreate(savedInstanceState);
    8. // Load the preferences from an XML resource
    9. addPreferencesFromResource(R.xml.preferences);
    10. }
    11. }
    Alles anzeigen



    Aufruf in der Activity

    Quellcode

    1. //noinspection SimplifiableIfStatement
    2. if (id == R.id.action_settings) {
    3. getFragmentManager().beginTransaction()
    4. .replace(android.R.id.content, new SettingsFragment())
    5. .commit();
    6. return true;
    7. }
    Preferences.xml

    XML-Quellcode

    1. <?xml version="1.0" encoding="utf-8"?>
    2. <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
    3. <EditTextPreference android:name="EditText Preference"
    4. android:summary="Geben Sie Ihren Kontonamen an"
    5. android:defaultValue="@string/pref_Username"
    6. android:title="Kontoname"
    7. android:key="editTextAccountName" />
    8. </PreferenceScreen>

    Das Ergebnis ist verblüffend. Die Settings werden im aktuellem Fragment angezeigt. Es gibt keinen Back-Button.



    Eigentlich sollte eine klassische "Settings" Seite dargestellt werden.

    Was habe ich ihr falsch gemacht ?

    Viele Grüße
    R.
  • Hallo eigentlich ist das Verhalten der App nicht komisch sondern richtig.


    Du willst bestimmt eine neue Seite haben also eigentlich eine neue eigene Activity.
    Machst du aber nicht. Dafür wäre eine PreferenceActivity wohl besser geeignet.
    Als nur ein Fragment mittels den Fragment Manager einzubinden.

    leider ist die PreferenceActivity ab API 29 Deprecated.

    Schaue dir mal an wie das Studio eine Einstellungs App macht.
    Da wird das alles Über XML Dateien eingebunden.
    Auch bei den normalen Fragments hast du keinen Fragmentmanager mehr.
    Ein Feedback auf Tipps ist auch schön. :P

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von jogimuc ()

  • Hi,

    wo findet man den ein komplettes Beispiel, was man vernünftig als Basis verwenden kann ?
    Gibt es ein gutes Buch, was sowas auch anschaulich beschreibt.
    Im Internet findet man ja eine Menge Beispiel, nur keines davon hilft mir derzeit wirklich.

    Das Buch, welche ich habe "Android-Apps entwicklen" hört da an der Stelle auf. Ist vielleicht auch schon was in die Jahr gekommen.

    Viele Grüße
    R.