In dieser Frage beziehe ich mich auf die App Einstellungen, die mit allen iDevices geliefert wird. Meine App besteht aus vielen verschiedenen Zellen, die in mehreren UITableViews enthalten sind. Wenn Sie eine beliebige Zelle auswählen, wird eine neue Tabelle mit einer neuen Liste von Zellen angezeigt, in der die Auswahl einer Zelle eine Funktion ausführen oder eine andere neue Tabelle aufrufen kann. Ich hoffe, dass sie ähnlich wie die oben erwähnte App "Einstellungen" funktioniert. Was wäre eine effizientere Möglichkeit, dies zu tun: ein paar (2 oder 3) UITableViews mit vielen "if" und "else if" -Anweisungen, die die Ergebnisse der einzelnen Zellenauswahl oder viele UITableViews, die jeweils ihre haben eigene Klasse und wird jeder einer bestimmten Zelle zugeordnet? Oder gibt es eine dritte Option?Wie kann ich eine Einstellungen-ähnliche Navigationsstruktur erstellen?
Antwort
Während ich mit @PhillipMills zustimme, ist die Antwort, die Sie suchen, Sie sollten einen UIViewController oder eine Unterklasse davon für jeden Bildschirminhalt haben. So würde beispielsweise die Einstellungs-App mit einem View-Controller strukturiert sein, um die erste gruppierte Tabellenansicht der großen Bereiche (Flugmodus, WLAN, Benachrichtigungen, Ortungsdienste usw.) zu verwalten. Durch das Antippen einer dieser Zellen, z. B. Benachrichtigungen, wird die didSelectRowAtIndexPath-Methode dieser Tabellenansicht aufgerufen, die einen NotificationsDetailViewController einer bestimmten Art lädt und auf den Stack des NavigationControllers verschiebt. Der NotificationDetailViewController wäre eine weitere gruppierte Tabellenansicht mit allen Benachrichtigungsinformationen. Das Gleiche gilt für die anderen Abschnitte, in denen jeder Abschnitt seinen eigenen Detailansicht-Controller hat, sofern zutreffend.
Ich würde eine Strategie empfehlen, dass es funktioniert, bevor man sich zu sehr um die Effizienz sorgt. Apple gibt Ihnen dafür bereits eine Struktur basierend auf einem Navigations-Controller und die Fähigkeit, neue Controller zu pushen. Mit dem bekommen Sie Dinge wie in der Lage zu sein, zurück zu verfolgen wo Sie herkommen oder ziemlich kostenlos zurück zur obersten Ebene.
- 1. Wie kann ich nur eine Einladung erstellen?
- 2. Wie kann ich eine vertikale UIToolbar erstellen?
- 3. Wie kann ich eine neue Farbe erstellen?
- 4. Wie kann ich eine neue Anmerkung erstellen?
- 5. Wie kann ich eine Kartenansicht erstellen?
- 6. Wie kann ich eine komplexe Buttonform erstellen?
- 7. Wie kann ich eine Vorlage für eine Zeichenfolge erstellen?
- 8. Wie kann ich eine Instanz wie objective-c erstellen?
- 9. Kann ich eine Konsolenanwendung mit Xamarin.Mac erstellen?
- 10. Kann ich eine Android-Schaltflächenvorlage erstellen?
- 11. Kann ich eine benutzerdefinierte Plist-Strukturdefinition erstellen?
- 12. Kann ich eine schreibgeschützte Abhängigkeitseigenschaft erstellen?
- 13. Ich kann eine Datenbank programmgesteuert nicht erstellen
- 14. Wie kann ich eine PDF-Datei programmgesteuert mit C erstellen?
- 15. Wie kann ich eine Audio-Stop-Taste erstellen?
- 16. Wie kann ich eine private Aufgabenliste in JIRA erstellen?
- 17. Wie kann ich eine benutzerdefinierte Eclipse-Syntax erstellen? Highlighter
- 18. Wie kann ich eine neue Instanz einer Klasse erstellen?
- 19. Wie kann ich eine Ebene in einem Bild erstellen?
- 20. Wie kann ich eine einzelne Instanz erstellen (keine Anwendung)?
- 21. Wie kann ich eine einfache Textbearbeitungssoftware in Shoes erstellen?
- 22. Wie kann ich eine Kriegsdatei meines Projekts in NetBeans erstellen?
- 23. Wie kann ich eine statische Methode in Objective-C erstellen?
- 24. Wie kann ich in C++ eine atomare Enumeration erstellen?
- 25. Wie kann ich eine Seitenfortschrittsleiste bei page_load mit jquery erstellen?
- 26. Wie kann ich eine ActiveRecord-Abfrage inkrementell zeilenweise erstellen?
- 27. Wie kann ich eine Antwortmarkierung als akzeptiertes System erstellen?
- 28. Wie kann ich eine Multimap in Java auf Android erstellen
- 29. Wie kann ich eine benutzerdefinierte 503 Seite auf OpenShift erstellen?
- 30. Wie kann ich eine Sequenz in SQLite erstellen?
Während ich dem zustimme, was du sagst, beantwortet es meine Frage nicht wirklich. Wäre es für mich besser, für jedes Ziel einen anderen Viewcontroller zu erstellen oder einfach ein paar sehr große Viewcontrollers zu erstellen, die alles handhaben können? Ich möchte nicht stundenlang auf einen gehen, nur um herauszufinden, dass es viel besser wäre, auf den anderen zu wechseln. – Garrett