Apps für iOS entwickeln - Am Beispiel einer realen App
von: Jan Tittel, Jochen Baumann
Carl Hanser Fachbuchverlag, 2013
ISBN: 9783446433144
Sprache: Deutsch
242 Seiten, Download: 12224 KB
Format: PDF, auch als Online-Lesen
1 Einführung | 14 | ||
1.1 Das Smartphone | 15 | ||
1.2 An wen richtet sich dieses Buch? | 15 | ||
1.3 Buchaufbau und verwendete Technologien | 16 | ||
1.4 Vorstellung des Beispielprojekts | 17 | ||
2 Einrichten der Arbeitsumgebung | 22 | ||
2.1 Installation von Xcode | 22 | ||
2.2 Grundlegende Konfiguration von Xcode | 24 | ||
2.3 Registrieren für das iOS-Entwicklerprogramm | 28 | ||
2.4 Zertifikate erstellen und einrichten | 31 | ||
2.5 Geräte für die Entwicklung freischalten | 35 | ||
3 Schnelleinstieg in | 3 Schnelleinstieg in | ||
38 | 38 | ||
3.1 Die erste App mit Xcode erstellen | 38 | ||
3.1.1 Ein neues Projekt anlegen | 39 | ||
3.1.2 Die Oberfläche von Xcode anpassen | 41 | ||
3.1.3 Projekteinstellungen und -dateien für ein neues Projekt | 42 | ||
3.1.4 Die Oberfläche der App anpassen | 45 | ||
3.1.5 Die Steuerelemente konfigurieren | 47 | ||
3.1.6 Verweise (Outlets) zu Steuerelementen hinzufügen | 49 | ||
3.1.7 Methoden für Ereignisse von Steuerelementen erstellen | 53 | ||
3.2 Die App im Simulator und auf einem Gerät testen | 53 | ||
3.3 Crash-Kurs in Objective-C | 55 | ||
3.3.1 Werte einer Variablen zuordnen | 56 | ||
3.3.2 Methoden von Objekten aufrufen | 57 | ||
3.3.3 Auf Eigenschaften zugreifen | 58 | ||
3.3.4 Objekte erzeugen | 59 | ||
3.3.5 Eigene Klassen erstellen | 59 | ||
3.3.6 Eigenschaften definieren | 62 | ||
3.3.7 Logging | 63 | ||
3.3.8 Kommentare | 64 | ||
3.3.9 Ablaufsteuerung mit Verzweigungen | 64 | ||
3.3.10 Wiederholungen mit Schleifen | 64 | ||
3.3.11 NULL und nil | 66 | ||
3.3.12 Fehlerbehandlung | 66 | ||
4 Mit dem Storyboard arbeiten | 68 | ||
4.1 Ein neues Projekt erstellen | 68 | ||
4.1.1 Die richtige Projektvorlage auswählen | 68 | ||
4.1.2 iOS-Zielversion festlegen | 71 | ||
4.1.3 Das Storyboard in der Übersicht | 71 | ||
4.2 Die Views einer App definieren | 73 | ||
4.2.1 Navigation Controller und View Controller hinzufügen | 74 | ||
4.2.2 Eigenschaften der View Controller und Views anpassen | 77 | ||
4.3 Zwischen Views navigieren | 79 | ||
4.3.1 Segues erstellen I | 79 | ||
4.3.2 Navigationsschaltflächen und Icons hinzufügen | 82 | ||
4.3.3 Segues erstellen II | 85 | ||
4.4 Zwischenstand der App (Version 0.1) | 87 | ||
5 Eigene Klassen und Subklassen erstellen | 90 | ||
5.1 Eigene Klassen erstellen | 90 | ||
5.2 Eigene Subklassen erstellen | 94 | ||
5.2.1 Subklassen für View Controller erstellen | 94 | ||
5.2.2 Subklasse einem View Controller zuordnen | 96 | ||
5.3 Aus Views zum Ursprung zurückkehren | 98 | ||
5.3.1 Unwind Segues erstellen | 98 | ||
5.3.2 Eine View per Code schließen | 100 | ||
5.4 Zwischenstand der App (Version 0.2) | 101 | ||
6 Mit Tabellen, Dateien und Text arbeiten | 102 | ||
6.1 Mit Tabellen und Zellen arbeiten | 103 | ||
6.1.1 Vorbereitungen im Code für die Master View | 103 | ||
6.1.2 Tabellen anpassen | 104 | ||
6.1.3 Zellen anpassen | 105 | ||
6.2 Mit Dateien arbeiten | 106 | ||
6.2.1 Anpassen der Detail View | 106 | ||
6.2.2 Segues für Aktionen vorbereiten | 110 | ||
6.2.3 Das Dateisystem auslesen | 111 | ||
6.2.4 Dateien öffnen, erstellen und speichern | 114 | ||
6.2.5 Dateien löschen | 120 | ||
6.3 Mit Text und dem Keyboard arbeiten | 121 | ||
6.3.1 Das Keyboard ausblenden und anpassen | 121 | ||
6.3.2 Text bearbeiten | 124 | ||
6.4 Dateien für iTunes freigeben | 128 | ||
6.5 Zwischenstand der App (Version 0.3) | 129 | ||
7 E-Mails, Webseiten und Auswahloptionen | 130 | ||
7.1 E-Mails versenden und Webseiten aufrufen | 130 | ||
7.1.1 Anpassen der About View | 131 | ||
7.1.2 E-Mails versenden | 132 | ||
7.1.3 Webseiten aufrufen | 135 | ||
7.2 Auswahloptionen anbieten | 135 | ||
7.2.1 Navigationsleiste per Code erweitern | 136 | ||
7.2.2 Action Sheet für Optionen anzeigen | 136 | ||
7.3 Zwischenstand der App (Version 0.4) | 138 | ||
8 Mit Gesten und Grafik arbeiten | 140 | ||
8.1 Master View und Detail View anpassen | 140 | ||
8.1.1 Anpassen der Master View | 141 | ||
8.1.2 Anpassen der Detail View | 141 | ||
8.2 Mit Gesten arbeiten | 143 | ||
8.3 Mit Grafikfunktionen und Fotos arbeiten | 145 | ||
8.3.1 Bilder anzeigen, erstellen und speichern | 145 | ||
8.3.2 Auf dem Bildschirm zeichnen | 149 | ||
8.3.3 Bilder zoomen und scrollen | 153 | ||
8.3.4 Fotos aufnehmen und importieren | 154 | ||
8.4 Zwischenstand der App (Version 0.5) | 159 | ||
9 Audios abspielen und aufnehmen | 160 | ||
9.1 Vorstellung der Detail View | 161 | ||
9.2 Audios aufnehmen und abspielen | 162 | ||
9.2.1 Audios aufnehmen | 162 | ||
9.2.2 Audios abspielen | 163 | ||
9.3 Audios im Hintergrund laufen lassen | 163 | ||
9.3.1 Audios im Hintergrund aufnehmen und abspielen | 164 | ||
9.3.2 Auf Ereignisse und Unterbrechungen reagieren | 164 | ||
9.3.3 Multimedia-Ereignisse verarbeiten | 165 | ||
9.4 Änderungen am Eingang und Ausgang überwachen | 166 | ||
9.4.1 Änderungen am Audio-Eingang | 167 | ||
9.4.2 Änderungen am Audio-Ausgang | 168 | ||
9.5 Auf vorhandene Hardware prüfen | 169 | ||
10 Datenbanken und Core Data | 170 | ||
10.1 Datenbanken erstellen | 171 | ||
10.1.1 Datenbank mit Xcode erstellen | 171 | ||
10.1.2 Subklassen für Daten erstellen | 174 | ||
10.1.3 Basismethoden implementieren | 175 | ||
10.2 Mit Datensätzen arbeiten | 177 | ||
10.2.1 Datensätze abfragen und erstellen | 177 | ||
10.2.2 Datensätze erstellen, ändern und löschen | 179 | ||
10.3 Daten und Arrays filtern | 181 | ||
10.3.1 Anpassen der MasterViewController | 181 | ||
10.3.2 Daten und Arrays mit NSPredicate filtern | 182 | ||
10.4 Zwischenstand der App (Version 0.7) | 184 | ||
11 Map View und Core Location | 186 | ||
11.1 Der Reminder View Controller | 186 | ||
11.1.1 Aufbau des Reminder View Controllers | 187 | ||
11.1.2 Eigene Benachrichtigungen über das Notification Center senden | 189 | ||
11.2 Ortsbestimmung mit Core Location | 190 | ||
11.2.1 Den aktuellen Ort in einer Map View anzeigen | 190 | ||
11.2.2 Autorisierungsstatus der Ortungsdienste auslesen | 191 | ||
11.3 Orte markieren und Adressen mit Reverse Geocoding bestimmen | 192 | ||
11.4 Code verzögert ausführen | 194 | ||
11.5 Zwischenstand der App (Version 0.8) | 195 | ||
12 Lokale Benachrichtigungen und Ortung | 12 Lokale Benachrichtigungen und Ortung | ||
196 | 196 | ||
12.1 Ortung im Hintergrund | 196 | ||
12.1.1 Ortung in den Projekteinstellungen aktivieren | 197 | ||
12.1.2 Ortung im Hintergrund durchführen | 197 | ||
12.2 Lokale Benachrichtigungen auslösen | 203 | ||
12.2.1 Geplante Benachrichtigungen | 203 | ||
12.2.2 Benachrichtigungen im Hintergrund | 205 | ||
12.2.3 Benachrichtigungen im Vordergrund | 206 | ||
12.3 Anzahl ungelesener Elemente anzeigen | 206 | ||
12.4 Zwischenstand der App (Version 0.9) | 209 | ||
13 Lokalisierung, Icons, Startbilder und Feinheiten | 210 | ||
13.1 Eine App lokalisieren | 210 | ||
13.1.1 Lokalisierung von Dateien vornehmen | 213 | ||
13.1.2 Strings lokalisieren | 213 | ||
13.1.3 Name der App lokalisieren | 213 | ||
13.2 Offene Dateien automatisch speichern | 214 | ||
13.3 App-Icon und Startbilder erstellen | 215 | ||
13.3.1 App-Icon festlegen | 215 | ||
13.3.2 Startbilder erstellen | 215 | ||
13.4 Letzter Feinschliff | 216 | ||
14 Veröffentlichung einer App im App Store | 218 | ||
14.1 App ID erstellen | 218 | ||
14.2 Hochladen einer App über iTunes Connect vorbereiten | 220 | ||
14.3 Distribution Provisioning Profile erstellen | 222 | ||
14.4 App mit Xcode bereitstellen | 223 | ||
Index | 228 |