Wie erstelle ich eine "Einstellungs-Anwendung" wie Tabellenansicht in meiner Anwendung?

8

Ich möchte meiner Anwendung eine Ansicht hinzufügen, mit der der Benutzer mehrere (viele) Einstellungen ändern kann. Es sollte aussehen wie die eingebaute "Einstellungen-Anwendung" ( hier ) aber es muss in meiner App selbst sein. Im Moment habe ich nur eine Tabellenansicht und ich manuell hinzufügen verschiedene Zellobjekte (entsprechend Schalter, Schieberegler, etc). Ist das schlauer, das zu tun? Ich habe das Gefühl, dass ich das Rad neu erfinde.

    
hanno 23.07.2009, 02:31
quelle

4 Antworten

4

Nein, das ist der Weg, einzelne Zellen in der Methode tableView:cellForRowAtIndexPath: zurückzugeben. Denken Sie daran, dass ein UITableViewCell nützliche Eigenschaften wie eine Accessory-Marke (eine Detail-Diskolour-Schaltfläche, eine Offenlegungs-Anzeige oder ein Häkchen) und ein Bild auf der linken Seite hat.

    
Marco Mustapic 23.07.2009, 02:39
quelle
11

Dies ist eine alte Frage nach Internet-Standards, aber ich habe einen erstaunlichen Weg gefunden, dies zu tun, der sehr wenig Aufwand erfordert. Ich zog mir die Haare aus und versuchte, eine zweite Tischansicht in einer anderen Feder zu erstellen, bevor ich diese Jungs fand: InAppSettingsKit

Im Grunde haben sie alle Views und die Backend-Sachen erledigt, alles was du tust ist das Hinzufügen der Dateien zu deinem Projekt und das Implementieren einiger Delegate-Methoden in der Klasse, von der du die Einstellungsseite nimmst (zusammen mit einer Schaltfläche in Ihre Benutzeroberfläche, um die Einstellungen zu öffnen, usw.), und es kümmert sich um die NSUserDefaults Zeug. Die UI und die Einstellungswerte und -schlüssel werden alle aus den gleichen Settings.bundle generiert, die für die App mit den echten Einstellungen verwendet werden. Das bedeutet, dass Ihre Einstellungen vom Benutzer an beiden Orten, in der App UND in der Einstellungs-App geändert werden können. Ich fand das viel einfacher als mit den Delegate-Methoden für eine benutzerdefinierte Tabellenansicht zu verwirren, und jetzt muss ich nicht wirklich zwischen Settings.app und etwas In-App wählen, weil es beides tut.

Sie müssen nur dann die Werte, die Sie für die einzelnen Einstellungen benötigen, später in Ihrer App abrufen, wenn Sie sie benötigen, mit [[NSUserDefaults standardUserDefaults] objectForKey: @ "key"].

    
steveatinfincia 09.05.2010 18:38
quelle
4

Hier ist ein Code, mit dem ich eine Einstellungsseite eingerichtet habe:

%Vor%

Die switch-Anweisung richtet drei Abschnitte ein: Zahlen, Randomize und Versionen. Sie können die Abschnitte mit den Steuerelementen ausfüllen, die Sie benötigen

    
ennuikiller 23.07.2009 02:42
quelle
0

Wenn Sie wirklich gut sind, können Sie einfach das gleiche Format verwenden, das Apple verwendet, um Einstellungen zu beschreiben, die normalerweise in das Bundle der Einstellungen eingehen würden - aber stattdessen selbst analysieren und dynamisch eine Tabelle basierend auf den Einstellungsarten erstellen / p>

Es ist eine Menge Arbeit, aber die Hälfte der Arbeit wurde bereits für Sie erledigt, da Apple ein sehr gut durchdachtes Schema für die Definition von Einstellungen hat.

Das bietet Ihnen auch den Vorteil, das Einstellungsformat um einige zusätzliche Fähigkeiten zu erweitern, die die App "Einstellungen" nicht hätte ...

    
quelle

Tags und Links