PreferenceActivity gibt eine NullPointerException, wenn die Option aus ListPreference ausgewählt wird

7

Ich bin neu in der Verwendung der PreferenceActivity.

Aufgabe: Erlaubt dem Benutzer, das Programmlayout in den Einstellungen

auszuwählen

Problem: Das Auswählen einer Option in der PreferenceList verursacht eine NullPointerException

Ausnahme: Bei android.preference.ListPreference.onDialogClosed ()

(verkürzter) Code:

%Vor%

[PräferenzAktivität]

%Vor%

[res / xml / pref.xml]

%Vor%

[Strings.xml]

%Vor%

Das Code-Bit, mit dem OnSharedPreferencesChanged ausgeführt wird, wird nie ausgeführt.

Kann jemand sehen, wo ich falsch gelaufen bin?

BEARBEITEN. Hier ist der Anfang des Stack-Trace:

%Vor%     
HXCaine 22.08.2010, 20:50
quelle

3 Antworten

19
%Vor%

Das wird fehlschlagen, weil die Präferenz eine Zeichenkette ist, kein int.

%Vor%

Ändere diese in <string-array> . Hier ist ein Beispielprojekt , das die Verwendung von ListPreference demonstriert.

    
CommonsWare 22.08.2010, 22:28
quelle
6

Ich stieß auf das gleiche Problem. Es scheint, dass Sie nur Zeichenfolgenwerte verwenden können: Ссылка

/ Håkan

    
hajons 23.08.2010 08:30
quelle
0

Ich denke, Sie müssen den Voreinstellungs-Listener für Ihre Vorlieben direkt an der Aktivität einstellen, versuchen Sie, dies auf die Aktivität onCreate der Aktivität zu setzen:

%Vor%     
Konstantin Burov 22.08.2010 21:47
quelle