2012-04-13 13 views
16

Ich habe dialogfragments definiert (weil Android-Dokumentation sagt, dass es besser ist und tatsächlich ist es), aber jetzt möchte ich es in PreferenceActivity verwenden.DialogFragment in PreferenceActivity

Das Problem ist, dass ich getSupportFragmentManager() dort nicht verwenden kann und PreferenceFragment nicht verwenden kann, da es nicht mit Kompatibilitätsbibliothek funktioniert. Sieht wie ein Straßenblockszenario aus.

Kann jemand dazu beraten?

+0

Ich habe das nie getan, aber vielleicht können Sie Verwenden Sie eine PreferenceFragment statt einer FragmentActivity? http://developer.android.com/reference/android/preference/PreferenceFragment.html – dmon

+1

Ich kann PreferenceFragment nicht verwenden, da es nicht in der Kompatibilitätsbibliothek – Matroska

+0

verfügbar ist. Ich habe auch etwas Zeit darauf verwendet. Die PreferenceActivity.onPrepareDialog() besagt, dass das DialogFragment mit dem Kompatibilitätspaket verfügbar sein sollte. Aber ich denke, das ist ein Fehler. Es ist einfach kein FragmentManager mit der PreferenceActivity verfügbar. – jsmith

Antwort

1

Wie Sie bereits angemerkt haben, ist PreferenceFragment nicht im Androiden-Kompatibilitätspaket und leider gibt es keinen sauberen Weg darum. Für mein persönliches Projekt hatte ich eine Implementierung aus der Android-Quellcode anpassen: http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/4.0.4_r1.2/android/preference/PreferenceFragment.java

Die Antworten auf diese Frage einige gute Vorschläge haben: Was PreferenceFragment intentionally excluded from the compatibility package?

Verwandte Themen