Zuhause Social Media Verwendung von Java Script Objektnotation in iOS Apps - dummies

Verwendung von Java Script Objektnotation in iOS Apps - dummies

Video: JavaScript for Web Apps, by Tomas Reimers and Mike Rizzo 2025

Video: JavaScript for Web Apps, by Tomas Reimers and Mike Rizzo 2025
Anonim

JavaScript-Objektnotation (JSON) ist der De-facto-Standard für die Darstellung von Daten in iOS-Apps. Mit JSON können Sie Daten über das Internet übertragen und als Format für das Speichern und Abrufen langlebiger Daten verwenden. JSON ist sowohl für den Menschen lesbar als auch für Maschinen leicht verständlich. Daten in JSON können sich in einer von zwei Strukturen befinden: Ein Objekt, das einen nicht geordneten Satz von Name-Wert-Paaren enthält. Jeder Name-Wert entspricht einem Attribut des Objekts. Jedes Name-Wert-Paar kann verschachtelt sein, falls das darzustellende Attribut hierarchisch aufgebaut ist.

  • Ein geordnetes Array von Werten. Jeder Wert im Array kann ein Skalar (ein boolescher Wert, ein String oder ein Zahlenwert), ein Objekt oder ein Array sein.
  • In Tic-Tac-Toe repräsentiert JSON den Zustand eines Spiels. Dieser Status besteht aus folgendem:

Der aktuelle Spieler (Spieler 1 oder Spieler 2) wird als Ganzzahl dargestellt (0 für Spieler 1 und 1 für Spieler 2).

  • Der Status des Spiels - ob es aktiv oder vollständig ist; wenn es abgeschlossen ist, ob es gewonnen oder gezogen wurde; und wenn gewonnen, von wem.

  • Die Zustände werden auch als Integer dargestellt, wobei Inactive -1 ist, Active ist 0, Won ist 1 und Draw ist 2.

    Der Zustand des Gitters - dh welche Symbole sind in jedem der Quadrate auf dem Gitter vorhanden. Beachten Sie, dass die Symbole als die ganzzahligen Werte 0, 1 und 2 dargestellt werden, die für Leerzeichen, X bzw. O stehen.

  • Das aktuelle Symbol (das Symbol, das beim nächsten Zug gespielt wird). Hier (und um das Beispiel nur zu variieren) stellen wir das Symbol als die Zeichenfolge "X" oder die Zeichenfolge "O" oder ein Leerzeichen ("") dar.

  • Der Spielzähler (die Anzahl der Zugriffe auf den aktuellen Punkt im Spiel) wird als Ganzzahl dargestellt.
  • In diesem Code zeigen wir das JSON-Objekt, das einem aktiven Tic-Tac-Toe-Spiel entspricht:

{"TTTGameKeyCurrentPlayer": 0, "TTTGameKeyState": 0, "TTTGameKeyGridState": "2, 1, 2, 2, 1, 0, 1, 2, 1 "," TTTGameKeyCurrentSymbol ":" X "," TTTGameKeyPlaycount ": 8}

JSON bildet die verfügbaren Datenstrukturen (z. B. Array, Strukturen und Objekte) in so ziemlich jede Programmiersprache. Die Objektform von JSON kann leicht auf Objekte oder Strukturen der Programmiersprache abgebildet werden, wohingegen die Array-Form von JSON einem Array, Vektor, einer Liste oder einer Sequenz zugeordnet werden kann, im Grunde genommen kann jede Datenstruktur eine geordnete Sammlung von Objekten enthalten.

In Tic-Tac-Toe wird das JSON-Objekt, das dem Status des Spiels entspricht, einem NSDictionary zugeordnet, da ein NSDictionary-Objekt auch aus verschachtelten Namenswertepaaren besteht.Wenn Sie den Status des Spiels speichern müssen, erhalten Sie daher seinen Status als NSDictionary-Objekt und konvertieren es dann in eine JSON-Zeichenfolge.

Wenn Sie den Status des Spiels abrufen, tun Sie das Gegenteil - Sie lesen JSON-Daten ein, konvertieren es in ein NSDictionary-Objekt und verwenden dann das NSDictionary, um das Spiel in den gespeicherten Zustand zurückzusetzen.

Das folgende Beispiel zeigt diese Konvertierung von einem Dictionary-Objekt in JSON und vom JSON-Datenobjekt in eine Zeichenfolge (von der Methode saveGame im Game Session-Ansichtscontroller - Dateien TTTGameSessionViewController. M und. H):

- (IBAction) saveGame: (id) Absender {NSDictionary * savedGameDictionary = [activeGame toDictionary]; NSError * Fehler; NSData * jsonData = [NSJSONSerialization dataWithJSONObject: savedGameDictionary-Optionen: NSJSONWritingPrettyPrinted error: & error]; NSString * savedGameString = [[NSString-Zuweisung] initWithData: jsonData-Kodierung: NSUTF8StringEncoding]; NSString * savedGamesFilePath = [NSHomeDirectory () stringByAppendingPathComponent: @TTTGAMESESSIONSAVEDFILEPATH]; [savedGameString writeToFile: savedGamesFilePath atomar: YES encoding: NSUTF8StringEncoding error: NULL];}

Die wichtige Methode ist hier die Methode dataWithJSONObject aus der NSJSONSerialization-Klasse.

Sie können die umgekehrte Operation (dh von einem JSON-String zu einem NSDictionary) in der restoreGame-Methode im selben View-Controller sehen:

- (IBAction) restoreGame: (id) sender {NSLog (@ "Restoring Spiel"); … NSError * restoreError = Null; NSMutableDictionary * savedDictionary = [NSJSONSerialization JSONObjectWithData: [savedGameString dataUsingEncoding: NSUTF8StringEncoding] Optionen: NSJSONReadingMutableContainers Fehler: & restoreError]; activeGame = [[TTTGame-Zuordnung] initFromDictionary: savedDictionary]; TTTGameGrid * gameGrid = [activeGame getGameGrid]; if (! [activeGame isActive]) [boardView disableInput]; [boardView setGrid: gameGrid]; [gameView redraw];}

Die Schlüsselmethode ist hier JSONObjectWithData, die den umgekehrten Vorgang der Erstellung des Objective-C NSDictionary aus JSON-Daten ausführt.

Verwendung von Java Script Objektnotation in iOS Apps - dummies

Die Wahl des Herausgebers

Wählen Sie einen Farbarbeitsbereich in Photoshop Elements 10 - Dummies

Wählen Sie einen Farbarbeitsbereich in Photoshop Elements 10 - Dummies

In Elements haben Sie die Wahl zwischen zwei Arbeitsbereichen Farben: entweder sRGB oder Adobe RGB (1998). Sie greifen auf Ihre Farb-Workspace-Einstellungen zu, indem Sie Bearbeiten → Farbeinstellungen wählen. Das Dialogfeld Farbeinstellungen wird geöffnet. Zu den Optionen im Dialogfeld "Farbeinstellungen" gehört "Keine Farbverwaltung": Mit dieser Option wird die gesamte Farbverwaltung deaktiviert. Wählen Sie nicht ...

Wählen Sie Vordergrund- und Hintergrundfarbe in Photoshop Elements - Attrappen

Wählen Sie Vordergrund- und Hintergrundfarbe in Photoshop Elements - Attrappen

Photoshop Elements ist ein Luxus-Full-Service Bildbearbeitungsprogramm, das nicht aufhört, Ihnen Werkzeuge zum Auswählen, Reparieren, Organisieren und Teilen Ihrer Bilder zu geben. Es ist wahrscheinlich, dass Sie einen Farbtupfer hinzufügen müssen, entweder mit einem Pinsel oder einem Bleistift oder in Form einer geometrischen oder organischen Form. Do not ...

Wählen Sie "Drucken" oder "Bildschirmauflösung" für Photoshop Elements 10 - Dummies

Wählen Sie "Drucken" oder "Bildschirmauflösung" für Photoshop Elements 10 - Dummies

Die Arbeit mit Elementen ist für das Drucken von Dateien von entscheidender Bedeutung. 72-ppi-Bilder können fehlerverzeihend sein, und Sie können viele Ihrer großen Dateien für Webseiten und Diashows auf 72 ppi verkleinern. Bei der Ausgabe an Druckgeräte ist es eine andere Sache. Es gibt viele verschiedene Druckausgabe-Geräte und ihre Auflösung ...

Die Wahl des Herausgebers

Wie man auf Evernote für Computer und Tablets markiert - dummies

Wie man auf Evernote für Computer und Tablets markiert - dummies

Der ganze Sinn des Speicherns von nützlichen Informationen ist um es später zu finden. Das Markieren in Evernote ist für alle Plattformen grundsätzlich ähnlich und äußerst nützlich, wenn Sie versuchen, Notizen auf das Gerät zu schreiben, das Sie gerade verwenden. So erstellen Sie ein Tag für eine Notiz auf einem Computer oder ...

Wie man Evernote Everywhere benutzt - dummies

Wie man Evernote Everywhere benutzt - dummies

Wenn du schon mit Computern gearbeitet hast, seit du aufgewachsen bist, denke, du hast alles gesehen. Bemerkenswerterweise ist Evernote das erste Stück Software, das viele Menschen je gesehen haben, geschweige denn benutzt, das ein glaubwürdiges Gleichgewicht zwischen widersprüchlichen Attributen herstellt: Es läuft fast genauso auf sehr unterschiedlichen Geräten, jedes von ...

Verwenden Sie Ihre Fotosammlung mit Evernote - Dummies

Verwenden Sie Ihre Fotosammlung mit Evernote - Dummies

, Wenn Sie bereits Fotos mit Ihrem iOS aufgenommen haben. Gerät oder Windows Phone, können Sie diese Bilder von Ihrer Kamerarolle an Evernote senden. Und so geht's:

Die Wahl des Herausgebers

Zum Anzeigen oder Ausblenden von Kommentaren in Word 2016 - dummies

Zum Anzeigen oder Ausblenden von Kommentaren in Word 2016 - dummies

Einen Kommentar zu Ihrem Word 2016-Dokument hinzufügen und der Markup-Bereich erscheint auf der rechten Seite der Seite. Der Markup-Bereich wird immer dann angezeigt, wenn ein Dokument Kommentare enthält, aber sein Aussehen wird durch die Einstellungen auf der Registerkarte "Überprüfen" gesteuert. Klicken Sie zum Ausblenden des Markup-Bereichs auf die Registerkarte Überprüfen. Klicken Sie in der Gruppe Nachverfolgung auf die ...

Wie man Text in einem Word 2007 Dokument löscht - Dummies

Wie man Text in einem Word 2007 Dokument löscht - Dummies

Die Fähigkeit, Text in Word 2007 zu löschen ist genauso wertvoll wie die Fähigkeit, diesen Text zu erstellen. Sie erstellen und zerstören Text in Word 2007 von der Computertastatur, und Sie verwenden die Mehrheit der Schlüssel, um Text zu erstellen. Nur zwei Schlüssel löschen Text: Rücktaste und Löschen. Funktionsweise dieser Schlüssel und wie ...

Wie man grundlegende Wildcard-Suchen in Word 2007 durchführt - dummies

Wie man grundlegende Wildcard-Suchen in Word 2007 durchführt - dummies

Unter Verwendung der Wildcards, können Sie Wörter in finden Ihre Word 2007-Dokumente, von denen Sie nur einen Teil kennen, oder eine Gruppe von Wörtern mit ähnlichen Buchstaben. Der Trick besteht darin, zwei grundlegende Platzhalterzeichen zu verwenden: und wo? steht für einen einzelnen Buchstaben und * steht für eine Gruppe von Buchstaben. Suchen Sie mit dem? ...