Starten Sie eine Aktivität von einem PreferenceScreen

8

Ich habe eine Liste von Strings (gespeichert in einer Datenbank, nicht als Ressource) und
Ich möchte dem Benutzer erlauben, diese Liste zu bearbeiten. Das ist einfach genug mit einem normalen zu tun Activity , aber in dieser Anwendung sollte diese Liste Teil von user preferences sein.
Im Grunde ist es eine Liste von Sätzen, die der Benutzer zur Verfügung haben möchte.

Da ich eine konsistente Benutzeroberfläche bereitstellen möchte, möchte ich dies zum Einstellungsbildschirm hinzufügen:

%Vor%

Nehmen wir an, ich habe ein voll funktionsfähiges Activity , mit dem ich die Texte in der Datenbank bearbeiten kann. Was kann ich tun, damit der Activity verwendet wird, wenn der Benutzer auf das Element 'PREF_PDT' tippt?

Ich nehme es an Ich muss einige Änderungen an der Activity
vornehmen oder eine benutzerdefinierte Preference-Ansicht erstellen?

Update: Um es klar zu sagen: Ich brauche den Bildschirm "Liste" nicht, um mich in die Einstellungen einzuklinken. Ich muss den Nutzern nur den Eindruck vermitteln, dass sie noch da sind den Preferences-Teil der Anwendung (natürlich ohne den Navigations-Stack zu durchbrechen). Andernfalls müssen sie an einen Ort gehen, um einige Einstellungen zu bearbeiten und an einen anderen Ort zu gehen, um die Texte zu bearbeiten. Sie erwarten alles unter 'Einstellungen' zu finden

Update: Ich habe die Frage vom Bildschirm "Benutzerdefinierte Einstellungen" umbenannt, um eine Liste von Elementen zu bearbeiten, da jetzt klar ist, dass ich versuche, eine Aktivität von einem Präferenzbildschirm aus zu starten. Die Antwort von sh404 hilft, aber ich kann nicht die richtige Syntax finden, um auf die Aktivität zu verweisen, die ich durchführen möchte. Vielleicht ist es monodroidspezifisch. (ActivityNotFoundException)

    
TimothyP 08.03.2013, 05:51
quelle

2 Antworten

16

schreibe so:

%Vor%

Wenn Sie Absichts Extras übergeben müssen:

%Vor%

Als nächstes müssen Sie die Aktivität in AndroidManifest.xml deklarieren oder Sie können den Intent im Einstellungsbildschirm wie folgt deklarieren:

%Vor%

Auf diese Weise müssen Sie keine Änderungen am AndroidManifest vornehmen.

    
sha256 08.03.2013, 06:35
quelle
-1

Ich hatte das gleiche Problem, aber keine der Lösungen, die ich auf stackoverflow gesucht habe, löste meine Aktivität nicht gefunden Ausnahme.

Hier ist die Arbeitslösung, die ich von hier gefunden habe:

> %Vor%

Legen Sie in Ihrer Aktivität in der Datei manifest.xml einen Intent-Filter fest

%Vor%     
Mehdi Fanai 05.06.2013 15:04
quelle