Die App, die ich entwickle, hat eine Aktivität, die sich erweitert SherlockFragmentActivity
. Ich möchte die Präferenzen api verwenden, um der Aktivität leicht Präferenzen hinzuzufügen. Da ich API-Level 8 und höher unterstützen möchte, muss ich die Aktivität aus der Klasse SherlockPreferenceActivity
erweitern.Android PreferenceActivity und Dialogfeldfragmente
Das Problem ist, dass die Aktivität einen Dialog anzeigen muss. Der Dialog erweitert sich um SherlockDialogFragment
. Die Methode des Dialogfelds benötigt zwei Parameter: ein FragmentManager
Objekt und ein String
Tag.
Um das Objekt FragmentManager
zu bekommen, rief ich die getSupportFragmentManager()
Methode der Aktivität an. Diese Methode fehlt in SherlockPreferenceActivity
. Ich habe versucht, getFragmentManager()
zu verwenden, aber Eclipse-sagt, dass
Die Methode show (FragmentManager, String) in der Art DialogFragment ist nicht anwendbar für die Argumente (FragmentManager, String)
Wie kann ich die Show Dialogfragment von SherlockPreferenceActivity
?
Ich habe das gleiche Problem. Wir müssen den FragmentManager aus dem Support-Paket beziehen, aber SherlockPreferenceActivity gibt es nicht. = ( –
) Ich habe es auf andere Weise gelöst. Erstellen Sie eine andere Aktivität unter dem gleichen Paket (denken Sie daran, diese neue Aktivität dem Manifest hinzuzufügen.) Erweitern Sie SherlockPreferenceActivity und implementieren Sie die Schnittstelle SharedPreferences.OnSharedPreferenceChangeListener Sehen Sie sich die Android-Entwickler-Website an, um zu verstehen Wie schreibe ich diese Aktivität Verwenden Sie diese Aktivität, um die Benutzereinstellungen zu verwalten Wenn die Benutzer die Einstellungsschaltfläche drücken, starten Sie die Einstellungsaktivität mit einer Absicht In der Hauptaktivität können Sie die Einstellungen mit dem PreferenceManager lesen. –