2 Installation und ein erstes Beispiel

2 Installation und ein erstes Beispiel
13
2
Installation und ein erstes Beispiel
In diesem Einstiegskapitel lernen Sie zunächst das iPhone Dev
Center als zentrale Quelle für Informationen rund um die Entwicklung von Anwendungen für das iPhone kennen. Danach
folgt eine Erläuterung der Installation sowie der Deinstallation des iOS SDK. Zum Abschluss dieses Kapitels wollen wir
uns noch ein Beispiel ansehen, das Ihnen ein erstes Gefühl für
die iPhone-Anwendungsentwicklung vermitteln soll.
Grundvoraussetzung für die Entwicklung mit dem iOS SDK
Bevor dieses Kapitel direkt mit der Installation und einem Beispiel loslegt,
sollen hier kurz die Grundvoraussetzungen für die Programmierung mit
dem iOS SDK aufgezeigt werden.
Für die Entwicklung mit dem iOS SDK benötigen Sie einen Apple Mac
mit installiertem Mac OS X. Da Sie in diesem Kapitel auch schon Quellcode zu sehen bekommen, sei noch darauf hingewiesen, dass die verwendete Programmiersprache Objective-C ist. Eine Einführung dazu finden Sie im Anhang dieses Buches.
2.1
Das iOS Dev Center
Alles, was Sie für den Start in die iPhone-Anwendungsentwicklung
benötigen, u.a. das iOS SDK, finden Sie im iPhone Dev Center, einem
umfangreichen Portal rund um die Entwicklung von iPhoneAnwendungen (http://developer.apple.com/ios). Das iPhone Dev Center
ist ein spezieller Bereich innerhalb der Apple Developer Connection
(http://developer.apple.com).
Für den Zugriff auf die im iOS Dev Center abgelegten Informationen benötigen Sie zunächst einen Zugang bei der Apple Developer
Connection: Ohne eine Anmeldung erhalten Sie zwar einen Überblick
Das iOS Dev Center
ist ein Unterbereich
innerhalb der Apple
Developer Connection.
14
2 Installation und ein erstes Beispiel
Das iOS Developer
Program
darüber, welche Informationen im iOS Dev Center vorhanden sind, Sie
können aber nicht darauf zugreifen.
Es ist wichtig zu erwähnen, dass diese Anmeldung zur Apple Developer Connection nicht mit einer Anmeldung zum iOS Developer Program1 (http://developer.apple.com/programs/ios/) zu verwechseln ist.
Apple Developer Connection vs. iOS Developer Program
Wie erwähnt, ist die Anmeldung zur Apple Developer Connection obligatorisch, um das iOS SDK und auch weiterführende Dokumentation und
Beispiele herunterladen zu können. Diese Anmeldung ist kostenlos. Apple
möchte wohl einfach etwas Kontrolle über die Informationen haben.
Das iOS Developer Program ist dagegen eine kostenpflichtige Angelegenheit. Eine Mitgliedschaft ist erforderlich, wenn Sie Ihre Anwendung
vertreiben wollen, wobei es nicht darauf ankommt, ob dies kostenpflichtig
oder umsonst geschehen soll. Eine Installation Ihrer entwickelten
Anwendung auf einem iPhone kann nur über den Umweg des iPhone
Developer Program erfolgen. Eine ausführliche Beschreibung des iOS
Developer Program finden Sie in Kapitel 8 dieses Buches.
Das iOS Dev Center können Sie als zentrale Stelle für Informationen
rund um die Entwicklung mit dem iOS SDK verstehen. Die Einstiegsseite enthält drei wesentliche Bereiche:
■ Suche (Abb. 2–1)
■ Beispiele und mehr (Abb. 2–2)
■ Download (Abb. 2–3)
Bereich 1:
Suche
Im oberen Bereich der Seite können Sie über das rechte Eingabefeld
eine Volltextsuche innerhalb des kompletten iPhone Dev Center ausführen. Sollten mehrere Versionen des iOS SDK angeboten werden,
können Sie zwischen ihnen am linken Rand der Titelzeile umschalten.
Abb. 2–1
Volltextsuche innerhalb
der zur Verfügung
stehenden Dokumente
Wie Sie in Abbildung 2–1 sehen, können Sie über die Schaltfläche iOS
SDK 4.1 auf diese Version zugreifen. Sollten mehrere Versionen zur
Verfügung stehen, befindet sich die neueste höchstwahrscheinlich im
Betastatus. Im obigen Screenshot verweist iOS 4 beta auf das zum
Redaktionsschluss noch nicht freigegebene iOS 4.2. Auf solch eine
1.
Umbenannt von iPhone Developer Program.
2.1 Das iOS Dev Center
Betaversion erhalten Sie nur Zugriff, wenn Sie beim iOS Developer
Program angemeldet sind.
Unterhalb der Suche finden Sie unter der Beschriftung Resources for
iOS 4.1 Verweise zu wichtigen Hilfen für die Applikationsentwicklung
mit dem iOS SDK. Der erste Link mit der Bezeichnung Downloads
springt lediglich auf der gleichen Seite nach unten, in den eigentlichen
Downloadbereich. Über den Link Getting Started Videos gelangen Sie
zu einer Übersicht mit hilfreichen Videotutorials für den Einstieg in die
iPhone-Entwicklung. Für das Betrachten der Videos (inklusive der
Übersicht) wird eine installierte iTunes-Version benötigt. Über die Links
Getting Started Documents und iOS Reference Library gelangen Sie zu
Dokumenten, die die Anwendungsentwicklung für das iOS beschreiben. Hinter iAd JS Reference Library steht der Bereich rund um die Entwicklung zu iAd, dem mobilen Werbedienst von Apple.
Der Verweis Coding How-To’s bietet Antworten auf viele Fragen
der täglichen Entwicklung, wie z.B. How to create a table view? Ein
sehr wichtiger Bereich steht hinter dem Verweis Sample Code. Hier
erhalten Sie Zugriff auf die zur Verfügung gestellten Beispiele. Diese
helfen Ihnen beim Einstieg in die Programmierung.
Unter der Beschriftung Featured Content finden Sie speziell hervorgehobene Verweise, wie z.B. den Link auf Start Developing iPad Apps.
15
Bereich 2:
Beispiele und mehr
Quellcodebeispiele für den
schnellen Einstieg
Abb. 2–2
Nachschlagebereich
innerhalb des
iOS Dev Center
16
2 Installation und ein erstes Beispiel
Bereich 3:
Download
Im Bereich Downloads (Abb. 2–3) kann die aktuelle Version des iOS
SDK im Disk-Image-Format2 (.dmg) heruntergeladen werden. Zusätzlich stehen Ihnen eine Installationsanleitung, die Nutzungsbestimmungen (engl. Agreement) und der Zugriff auf das iPhone Configuration
Utility zur Verfügung. Vor dem Einsatz des iOS SDK empfiehlt sich ein
Blick in die Nutzungsbestimmungen. Zusätzlich kann es vorkommen,
dass weitere wichtige Dokumente im Bereich Downloads angeboten
werden.
Neben dem iOS SDK können Sie in diesem Bereich auch das Entwicklerkit für iAd herunterladen.
Abb. 2–3
Downloadbereich für das
iOS SDK und iAd JS
2.2
Das iOS SDK installieren
Um das iOS SDK zu installieren, müssen Sie zunächst die aktuelle Version aus dem Downloadbereich herunterladen. Wie schon erwähnt,
steht das Paket als fertiger Installer im dmg-Format zur Verfügung.
Der Name des Paketes lautet xcode_3.2.4_and_iphone_sdk_4.1.dmg. Der
Dateiname passt sich bei jeder neuen Version des iOS SDK an. Anzunehmen ist, dass zumindest die Versionsnummer bei zukünftigen Versionen mit hochgezählt wird. Beim Übergang vom iPhone OS 2.1 auf
2.2 war im Dateinamen zusätzlich der Name des Builds (z.B. 9m2736)
hinzugekommen, dieser wurde mit dem iOS SDK 4 aber wieder im Dateinamen entfernt. Das zuvor erwähnte Installationspaket hat eine
stattliche Größe von 3,15 GB.
2.
Ein Archivformat
2.2 Das iOS SDK installieren
17
iOS SDK – passende Version
Für die Beschreibungen in diesem Buch wurde das iOS SDK 4.1 verwendet. Der dabei eingesetzte Build ist 10M2309, der am 08.09.2010 erschienen ist. Für die Verwendung ist nach Angaben von Apple im iOS
Dev Center mindestens ein Mac OS X der Version 10.6.4 notwendig. Zusätzlich wird iTunes in der Version 9.2 benötigt. Sollte auf dem Zielsystem
noch nicht die richtige Version installiert sein, können Sie dies über die
integrierte Softwareaktualisierung von Mac OS X nachholen.
Nach dem Download kann das heruntergeladene Paket mittels Doppelklick geöffnet werden. Aufgrund der Größe des Paketes kann das
Öffnen etwas Zeit in Anspruch nehmen. Das geöffnete Archiv präsentiert sich mit den zwei Einträgen About Xcode and iOS SDK und
Xcode and iOS SDK for Snow Leopard. Bereits im Namen der zwei
Dateien wird ersichtlich, dass Xcode (die Entwicklungsumgebung) ein
wichtiger Bestandteil bei der Programmierung für das iOS ist.
Die PDF-Datei About Xcode and iOS SDK enthält eine kurze englischsprachige Erläuterung zur heruntergeladenen Version des iOS
SDK. Auch die Änderungen in Xcode sind in diesem Dokument aufgeführt.
Der Installer für das iOS SDK (Name: Xcode and iOS SDK for
Snow Leopard) steht im mpkg3-Format zur Verfügung (ein Meta
Package, enthält gebündelt alle Dateien für eine Installation).
Die endgültige Installation wird per Doppelklick auf das Icon Xcode
and iOS SDK for Snow Leopard gestartet. Zusätzlich zu Kommandozeilenwerkzeugen wird bei der Installation des iOS SDK auch noch die
Entwicklungsumgebung Xcode in der Version 3.2.4 installiert.
Vorsicht bei einer alten Version von Xcode
Standardmäßig wird seit Mac OS X 10.5 die Entwicklungsumgebung
Xcode im Verzeichnis /Developer installiert. Sollte auf Ihrem Rechner
bereits eine alte Xcode-Version installiert sein, wird sie durch die Installation von Xcode in der Version 3.2.4 aktualisiert. Besteht der Wunsch zum
Parallelbetrieb, müssen Sie für die neue Version ein anderes Verzeichnis
(Variante Custom Install) angeben; falls Sie die neue Version aber im
Verzeichnis /Developer installieren möchten, müssen Sie die alte vor der
Installation in ein anderes Verzeichnis verschieben.
3.
Dieses Paket ist innerhalb des dmg-Archives enthalten.
About Xcode and iOS SDK
Xcode and iOS SDK for
Snow Leopard
Installation starten
18
2 Installation und ein erstes Beispiel
Nach kurzer Zeit erscheint das Fenster des Installers (siehe Abb. 2–4).
Der Installer ist im Stile eines typischen Wizards aufgebaut. Das Fenster kann in drei Bereiche eingeteilt werden:
■ Bereich 1: Anzeige des aktuellen Schrittes innerhalb der Navigation. Die einzelnen Punkte (z.B. Einführung oder Lizenz) können
nicht angeklickt werden, sondern dienen lediglich der Übersicht.
■ Bereich 2: Der eigentliche Inhaltsbereich des Installers
■ Bereich 3: Der Navigationsbereich mit den Schaltflächen für die
Steuerung (Fortfahren oder Zurück) in der Installation
Bei der Verwendung der deutschen Version des Installationsprogramms sollten Sie sich nicht davon verwirren lassen, dass einige Informationen während der Installation trotzdem in englischer Sprache erscheinen (z.B. die Lizenz für das iOS SDK, das iOS SDK Agreement).
Abb. 2–4
Der Installer des
iOS SDK, aufgeteilt in
drei Bereiche
Zu Beginn der Installation werden Ihnen nacheinander die Lizenz zu
Xcode und zum iOS SDK präsentiert. Diesen Lizenzen müssen Sie für
eine Installation zustimmen.
Bei dem Schritt Installationstyp sollten Sie beachten, dass standardmäßig bereits eine Auswahl vorselektiert ist, die in den meisten Fällen
auch passend ist. Das Paket Developer Tools kann nicht deaktiviert
werden. Es enthält unverzichtbare Elemente für die Entwicklung einer
Anwendung mit dem iOS SDK, wie z.B. Xcode. Zusätzlich sind die
Pakete iOS SDK, System Tools und UNIX Development Support selek-
2.2 Das iOS SDK installieren
19
tiert. Die Tabelle 2–1 enthält eine kurze Beschreibung der sechs Pakete
des Installationsdialoges.
Name des Paketes
Beschreibung
Essentials
Diese Option fasst die beiden Unterpunkte Xcode Toolset
und iOS SDK zusammen. Standardmäßig ist diese Option
selektiert. Für dieses Paket kann das Verzeichnis der Installation über »Ort« festgelegt werden. Das Basisverzeichnis ist
auf /Developer voreingestellt.
7,28 GB
Xcode Toolset
1,74 GB
iOS SDK
3,35 GB
System Tools
55,5 MB
UNIX Development
Support
806,6 MB
Installiert Xcode, Instruments, Interface Builder, Dashcode,
Compiler (GCC) und weitere Entwicklungswerkzeuge. Zusätzlich wird das SDK für Mac OS X installiert. Dieses Paket
muss installiert werden und kann auch nicht vom Entwickler
deaktivert werden.
Entwicklungswerkzeuge, Header-Dateien, Bibliotheken und
Dokumentation für die Anwendungsentwicklung. Die Installation erfolgt innerhalb des /Platforms-Verzeichnisses im Entwicklungsverzeichnis, standardmäßig ist dies /Developer/
Platforms. Das iOS SDK benötigt einen Intel-basierten Mac
mit mindestens Version 10.6.2a (oder höher) von Mac OS X.
Beinhaltet generelle Werkzeuge wie Shark zur Messung der
Performance. Shark ist Bestandteil der CHUD-Werkzeugsammlung (Computer Hardware Understanding Development) rund um das Thema Performance. Zusätzlich werden
DTrace-Komponenten installiert. DTrace wird u.a. von Instruments verwendet.
Wichtig ist, dass nur eine Version (und zwar immer die
neueste) der System Tools installiert sein kann. Diese wird
auch immer im /Developer-Verzeichnis abgelegt.
Enthält zusätzliche Werkzeuge zur Entwicklung auf der Kommandozeile. Installiert einen zusätzlichen GCC-Compiler
und Kommandozeilenwerkzeuge in Verbindung mit dem reinen Xcode-Entwicklungspaket. Daneben werden HeaderDateien, Bibliotheken und andere Dateien für die Softwareentwicklung mit Mac OS X installiert. Dieses Paket wird mit
Shellskripten ausgeliefert, die auf Dateien in vordefinierten
Verzeichnissen zugreifen; darum ist eine Änderung des Installationsortes nicht möglich.
Documentation
Wenn diese Option aktiviert ist, wird beim ersten Start von
Xcode die Entwicklungsdokumentation heruntergeladen. Die
Dokumentation wird automatisch aktuell gehalten. Es empfiehlt sich sehr, diese Option zu aktivieren. Bei Deaktivierung
kann auf die Dokumentation nur mit aktiver Internetverbindung zugegriffen werden.
Die Einstellung dieser Option kann jederzeit in Xcode verändert werden.
Mac OS X 10.4 SDK
Unterstützung für die Anwendungsentwicklung für Mac OS X
10.4.
a) Xcode 3.2.4 benötigt mindestens Mac OS X 10.6.4.
Tab. 2–1
Die Distribution des iOS
SDK enthält mehr als nur
das reine SDK. Die
Bestandteile können bei
der Installation
ausgewählt werden.
20
2 Installation und ein erstes Beispiel
Für die Installation der vorselektierten Pakete werden insgesamt ungefähr 8,17 GB Speicherplatz benötigt. Eine Änderung des Installationsverzeichnisses ist möglich, sollte vorher aber gründlich überdacht werden. Für die ersten Schritte ist es sicherlich sinnvoll, die Verzeichnisse
beizubehalten. Sollten Sie später doch noch ein anderes Verzeichnis
vorziehen, können Sie das iOS SDK immer noch deinstallieren und in
einem neuen Verzeichnis installieren.
Nach der Auswahl der entsprechenden Pakete wird die letztendliche
Installation der einzelnen Pakete über Fortfahren gestartet. Für die
Installation des iOS SDK benötigen Sie Administratorrechte, deshalb
fordert der Installer Sie zur Eingabe des entsprechenden Kennwortes
auf. Das Ende der Installation wird mit der Meldung Installation
erfolgreich bestätigt.
Nach der erfolgreichen Installation des iOS SDK sollten, wie in
Abbildung 2–5 dargestellt, die 3 Verzeichnisse unterhalb /Developer/Platforms stehen.
Abb. 2–5
Die Verzeichnisse nach der
Installation
Wie am Namen schon zu erkennen, befinden sich im Verzeichnis iPhoneOS.platform Dateien rund um das sogenannte iOS, das Betriebssystem des iPhone. Im Verzeichnis iPhoneSimulator.platform sind die Dateien zum iPhone Simulator enthalten.
Zusätzlich zum iOS SDK werden, wie schon erwähnt, die Entwicklungsumgebung Xcode und zusätzliche Tools installiert. Diese befinden
sich unterhalb des Verzeichnisses /Developer/Applications.
Abb. 2–6
Werkzeuge des
iOS SDK
2.3 Das iOS SDK deinstallieren
2.3
21
Das iOS SDK deinstallieren
In der kurzen Startdokumentation4 für das iOS SDK wird beschrieben,
dass bei der Installation einer neuen Version des iOS SDK die letzte
Version überschrieben wird. Falls Sie auf Nummer sicher gehen möchten, besteht auch die Möglichkeit, ein bereits installiertes iOS SDK
vorher zu entfernen. Für eine Deinstallation stehen vier unterschiedliche Varianten zur Verfügung, die inklusive einer kurzen Erläuterung in
der nachfolgenden Tabelle 2–2 beschrieben werden. Die Erläuterungen
gehen davon aus, dass das iOS SDK im vorgegebenen Standardverzeichnis /Developer installiert wurde. Falls das Verzeichnis geändert
wurde, müssen Sie den Basispfad /Developer in den Befehlen anpassen.
Beschreibung
Abzusetzender Befehla
Komplette Deinstallationb des iOS SDK
und der dazugehörigen Komponenten,
d.h. inklusive der Entwicklungsumgebung
Xcode.
sudo /Developer/Library/
uninstall-devtools --modec=all
Deinstallation des reinen iOS SDK. Mit
dieser Variante wird die Entwicklungsumgebung Xcode beibehalten.
sudo /Developer/Library/
uninstall-devtools --mode=
systemsupport
Deinstallation des Unix Development
Support. Die anderen Bestandteile, wie
z.B. Xcode, werden beibehalten.
sudo /Developer/Library/
uninstall-devtools --mode=unixdev
Deinstallation von Xcode. Neben dem angegebenen Befehl kann für eine Deinstallation auch einfach der Xcode-Ordner auf
den Papierkorb gezogen werden.
sudo /Developer/Library/
uninstall-devtools --mode=xcodedir
a)
b)
c)
Varianten zur
Deinstallation des
iOS SDK
Die angegebenen Befehle sind über das Terminal auszuführen.
Eine Deinstallation ist selbstverständlich nur mit Administratorrechten möglich.
Ohne Angabe des Parameters mode wird immer --mode=all herangezogen.
Die Deinstallation des kompletten Paketes kann einige Minuten in Anspruch nehmen. Das Terminalfenster sollten Sie während dieser Deinstallation nicht schließen, um den Prozess auch sauber beenden zu
können.
4.
Tab. 2–2
Das iOS SDK Readme ist online verfügbar unter der URL
https://developer.apple.com/ios/download.action?path=/ios/ios_sdk_4.1__final/
about_xcode_3.2.4_and_ios_sdk_4.1.pdf.
22
2 Installation und ein erstes Beispiel
2.4
Ein erstes Beispiel
Als Einstiegsbeispiel habe ich nicht die übliche Hello-World-Anwendung gewählt, sondern einen sehr einfachen Taschenrechner für die
Zahlen 0 bis 9. Der Name des kleinen Helferleins soll fast.calc sein. Als
Basis verwenden wir dafür eine eigens für diese Buch geschriebene Anwendung namens my-calculator, die Sie von der Buchwebsite herunterladen und im Folgenden erweitern können.
Dieses Beispiel soll Ihnen einen ersten Einblick geben, wie die Entwicklung mit dem iOS SDK aussieht. Es geht nicht näher auf die Details
der iPhone-Anwendungsentwicklung ein, sondern zeigt lediglich die
erforderlichen Schritte, um eine einfache, lauffähige Version der
Anwendung zu erhalten. Damit erhalten Sie ein Gefühl, wie die Entwicklung einer eigenen App vonstatten geht. Die Erläuterung der Hintergründe folgt in den späteren Kapiteln.
Die Anwendung my-calculator besitzt im Grundzustand nur die
Grundrechenart Addition. In diesem ersten Beispiel werden wir
gemeinsam die Anwendung um die Grundrechenart Subtraktion (siehe
Abb. 2–7) erweitern.
Abb. 2–7
Oberfläche von fast.calc
Schritt 1:
Der Download
Wie bereits erwähnt, wird fast.calc auf Basis einer einfacheren Beispielanwendung entwickelt. Laden Sie daher das Beispiel von der
Buchwebseite herunter (http://www.dpunkt.de/iphone, Link »MyCal-
2.4 Ein erstes Beispiel
23
culator«) oder über http://www.dpunkt.de/leseproben/3402/my-calculator.zip.
Dann extrahieren Sie dieses Archiv in ein beliebiges Verzeichnis. Nach
dem Entpacken präsentiert sich das Beispiel wie in der Abbildung 2–8.
Abb. 2–8
Das entpackte Beispiel
my-calculator
Für die Bearbeitung der Anwendung öffnen Sie sie über einen Doppelklick auf die Datei my-calculator.xcodeproj. Daraufhin öffnet sich
nach kurzer Zeit die Entwicklungsumgebung Xcode mit dem Projekt
my-calculator (siehe Abb. 2–9).
Abb. 2–9
Schritt 2:
Entwicklungsumgebung
öffnen
Xcode mit dem geöffneten Projekt my-calculator
Um die Anwendung ein erstes Mal zu starten, müssen Sie das Beispiel
übersetzen. Dies erfolgt mittels Klick auf die Schaltfläche Build and
Run (siehe Abb. 2–10).
Schritt 3:
Das Beispiel mit den
Änderungen starten
24
2 Installation und ein erstes Beispiel
Abb. 2–10
Das Beispiel übersetzen
und starten
Nach kurzer Zeit ist der Quellcode übersetzt und die Anwendung wird
im mitgelieferten iPhone Simulator gestartet. Danach präsentiert sich
sofort die Anwendung my-calculator (Abb. 2–11).
Den iPhone Simulator können Sie per Maus bedienen: Eingaben
nehmen Sie per Klick auf die Schaltflächen vor, und über die Schaltfläche »C« setzen Sie den Taschenrechner zurück. Das Gleichheitszeichen
wurde aus Gründen der Einfachheit weggelassen: Nach Betätigung der
Schaltfläche »+« gefolgt von einer Zahl wird sofort das Additionsergebnis ausgegeben.
Abb. 2–11
my-calculator gestartet
Bei der Betätigung des schwarzen iPhone-Knopfes (genannt Home) in
der Mitte des unteren Randes kommt der Nutzer auf das Hauptmenü
zurück. Hier ist die Beispielanwendung my-calculator mit einem eigenen Icon vertreten (siehe Abb. 2–12).
2.4 Ein erstes Beispiel
25
Abb. 2–12
my-calculator im
Hauptmenü
Für das Schließen der Anwendung muss der iPhone Simulator über den
Menüpunkt iPhone-Simulator/iPhone-Simulator beenden geschlossen
werden, alternativ funktioniert auch die Tastenkombination cmd+Q.
Nach dem Beenden können Sie nun Änderungen an der Anwendung
vornehmen.
Wie in Abbildung 2–12 zu erkennen, erscheint unter dem
Anwendungsicon der Projektname my-calculator. Unsere erste Änderung besteht darin, diesen Namen anzupassen. Diese Änderung nehmen
Sie in der Einstellungsdatei my_calculator-Info.plist vor. Nach einfachem Klick auf die Datei öffnet sich der Inhalt im rechten Bereich von
Xcode. Nun ändern Sie in der Zeile Bundle display name den Wert auf
fast.calc (siehe Abb. 2–13). Per Doppelklick auf eine Zelle können Sie
deren Wert ändern. Speichern Sie die Änderung nun mittels Tastaturkürzel cmd+S.
Schritt 4:
Das Beispiel beenden
Schritt 5:
Name der Anwendung
anpassen
Abb. 2–13
Einstellungsdatei
my_calculator-Info.plist
im geöffneten Editor
Nach einem Neustart der Anwendung mittels Build and Run öffnet sie
sich im iPhone Simulator. Nach Betätigen der Home-Schaltfläche sehen Sie die Änderungen unter dem Icon. Sollten die Änderungen nicht
sichtbar sein, beenden Sie den iPhone Simulator, rufen Sie über das
Menü von Xcode den Befehl Build/Clean All Targets auf und starten
Sie erneut den Simulator. Nun sollte die Änderung auf jeden Fall sichtbar sein.
Bisher unterstützt der Taschenrechner nur die Addition, in unserem
Beispiel wollen wir ihn um die Subtraktion erweitern. Hierfür müssen
Sie zunächst eine Schaltfläche mit einem Minuszeichen hinzufügen.
Die Oberfläche der Anwendung ist in der Oberflächendefinitionsdatei my_calculatorViewController.xib definiert. Für die Bearbeitung solcher Dateien steht das Werkzeug Interface Builder zur Verfügung.
Mittels Doppelklick auf die Datei in Xcode wird diese direkt im Interface Builder geöffnet. Neben dem Projektfenster (linkes Fenster in Abb.
2–14) sollten Sie auch die Oberfläche mit den bereits enthaltenen
Schritt 6:
Oberfläche anpassen
26
2 Installation und ein erstes Beispiel
Schaltflächen sehen. Sollte nur das Projektfenster sichtbar sein, öffnen
Sie per Doppelklick auf das Symbol View die zugehörige Oberfläche.
Abb. 2–14
Oberfläche im Interface
Builder geöffnet
Am einfachsten fügen wir die Schaltfläche mit dem Minuszeichen
hinzu, indem die bereits vorhandene Schaltfäche mit dem Pluszeichen
kopiert wird. Hierfür markieren Sie die Schaltfläche und kopieren sie
über den Menüpunkt Edit/Copy (Tastaturkürzel: cmd+C). Sie lässt
sich dann über den Menüpunkt Edit/Paste (Tasturkürzel: cmd+V) einfügen und mit der Maus an die richtige Stelle verschieben. Es bietet
sich der Platz links neben dem Pluszeichen an (siehe Abb. 2–15). Für
die Anordnung der Schaltfläche zeigt der Interface Builder während
des Verschiebens blaue Führungslinien.
Abb. 2–15
Führungslinien helfen bei
der Positionierung im
Interface Builder
Schritt 7:
Schaltfläche mit
Quellcode verbinden
Um den Text bzw. das Symbol der Schaltfläche zu ändern, genügt ein
Doppelklick auf die Schaltfläche. Nun können Sie das Zeichen »-« einfügen. Über File/Save speichern Sie die Änderung.
Die Oberfläche ist nun angepasst. Jetzt fehlt noch die Erweiterung
im Quellcode. Hierfür muss eine Verbindung5 zwischen der neuen
Schaltfläche und dem Quellcode hergestellt werden. Im Detail sieht das
2.4 Ein erstes Beispiel
27
so aus: Da beim Klick auf eine Schaltfläche ein Event ausgelöst wird,
muss dieses Event nun mit einer Methode verbunden werden. Hierfür
klicken Sie im Projektfenster auf das Symbol File’s Owner und wählen
im Menü die Aktion Tools/Identity Inspector aus. Der Identity Inspector (siehe Abb. 2–16) öffnet sich und zeigt die zur Oberflächendefinitionsdatei gehörige Klasse an. In diesem Fall ist die Anzeige
my_calculatorViewController.
Abb. 2–16
Geöffneter Identity
Inspector
Neben dem Namen wird ein weißer Pfeil angezeigt. Per Klick auf den
Pfeil öffnet sich die Oberflächenbibliothek (siehe Abb. 2–17) mit dem
selektierten my_calculatorViewController. Im unteren Bereich befindet sich ein Auswahlmenü, bei dem Inheritance ausgewählt ist. Für das
Hinzufügen einer neuen Aktion müssen Sie den Menüpunkt Actions
auswählen.
Abb. 2–17
Der Controller in der
Oberflächenbibliothek
Nach Auswahl von Actions werden alle bereits vorhandenen Actions
angezeigt. Hier sehen Sie die schon definierten Methoden für die anderen Schaltflächen. Über die Schaltfläche »+« wird eine neue Methode
hinzugefügt. Diese Methode bekommt den sprechenden Namen pressMinus: (siehe Abb. 2–18). Der generische Rückgabewert id wird dabei
nicht angepasst.
5.
Als Outlet bezeichnet. Mehr zu Outlets im Kapitel 3.
28
2 Installation und ein erstes Beispiel
Abb. 2–18
Hinzufügen der neuen
Aktion pressMinus:
Über den Menüpunkt File/Save speichern Sie die vollzogene Änderung
ab und schließen den Identity Inspector und die Oberflächenbibliothek. Nun gilt es, die Methode mit der Schaltfläche zu verbinden. Hierfür selektieren Sie das Symbol File’s Owner und öffnen das Kontextmenü (siehe Abb. 2–19) über die rechte Maustaste. Unterhalb von
Received Actions finden Sie die definierte Methode pressMinus:. Nun
klicken Sie auf das Pluszeichen und ziehen die blaue Linie mit gedrückter linker Maustaste auf die hinzugefügte Schaltfläche. Beim Loslassen
der Maustaste werden die zur Verfügung stehenden Events der Schaltfläche angzeigt. Hier wählen Sie Touch Down aus und speichern die
Änderungen über File/Save ab.
Abb. 2–19
Herstellen der
Verbindungen zwischen
Methode und Schaltfläche
Automatische Übernahme
in den Quellcode
Die Änderungen befinden sich nun in der Oberflächendefinitionsdatei
und müssen noch in den Quellcode übertragen werden. Über den
Menüpunkt File/Write Class Files... werden die Änderungen in den
Quellcode zurückgeschrieben. Zuerst müssen Sie den Ort auswählen,
an dem die Datei gespeichert wird. Das richtige Verzeichnis ist Classes
innerhalb des Projektordners.
Der nächste Dialog fragt, ob die Datei ersetzt (Replace) oder zusammengeführt (Merge...) werden soll. In diesem Fall ist Merge... die passende Variante. Nun öffnet sich das Hilfsprogramm FileMerge, um die
Datei zusammenzuführen. Das Programm wird automatisch mit den
2.4 Ein erstes Beispiel
Dateien my_calculatorViewController.h (Header-Datei) und my_calculatorViewController.m (Implementierungsdatei) geöffnet.
Wählen Sie die Option Choose both (left first) am unteren Rand
des Fensters aus und speichern Sie die Datei über File/Save Merge. Dies
müssen Sie für beide Dateien durchführen, sowohl für die Header-Datei
als auch für die Implementierungsdatei. Nach Abschluss können Sie
FileMerge über den Menüpunkt File Merge/Quit FileMerge beenden.
Die Arbeiten im Interface Builder sind damit auch abgeschlossen und
Sie schließen ihn über Interface Builder/Quit Interface Builder.
Beim folgenden Start der Anwendung über Build and Run in Xcode
werden Sie den Taschenrechner mit der neuen Oberfläche sehen. Beim
Klick auf Minus wird sich aber noch keine Änderung ergeben. Das liegt
daran, dass im Quellcode die Methode pressMinus: bisher ohne Funktionalität ist. Lediglich der Methodenrumpf ist in der Datei
my_calculatorViewController.m (siehe Listing 2–1) enthalten. Diesen
Methodenrumpf hatten Sie zuvor über das Zuschreiben der Klassendatei aus dem Interface Builder erzeugt.
- (IBAction)pressMinus:(id)sender {
}
Der Taschenrechner ist relativ einfach konstruiert. Über eine boolesche
Variable wird festgehalten, ob die Plus-Schaltfläche zuletzt gedrückt
wurde oder nicht. Diese Variable trägt den Namen plusPressed (siehe
Listing 2–2) und ist innerhalb der Datei my_calculatorViewController.h
definiert.
@interface my_calculatorViewController : UIViewController {
IBOutlet UITextField *displayField;
BOOL plusPressed;
int value;
}
29
Subtraktion
implementieren
Listing 2–1
Leere Methode
pressMinus:
Listing 2–2
Definition der Variablen
plusPressed
Da eine boolesche Variable nur zwei Zustände speichern kann, führen
wir für die Subtraktion eine weitere Variable des Datentyps BOOL mit
dem Namen minusPressed ein (siehe Listing 2–3). Diese Variable (1)
fügen wir der Header-Datei my_calculatorViewController.h hinzu.
@interface my_calculatorViewController : UIViewController {
IBOutlet UITextField *displayField;
BOOL plusPressed;
BOOL minusPressed; 1
int value;
}
Listing 2–3
Defintion der Variablen
minusPressed
30
2 Installation und ein erstes Beispiel
Der nächste Schritt ist die Implementierung der Methode pressMinus
(siehe Listing 2–4). In dieser Methode wird lediglich die Variable minusPressed auf den Wert YES (1) und plusPressed auf NO (2) gesetzt.
Analog ist die Methode pressPlus anzupassen.
Listing 2–4
Implementierung der
Methoden pressPlus und
pressMinus
- (IBAction)pressPlus:(id)sender {
plusPressed = YES;
minusPressed = NO;
}
- (IBAction)pressMinus:(id)sender {
minusPressed = YES; 1
plusPressed = NO; 2
}
Nun fehlt noch die Erweiterung der Rechenlogik. Die Implementierung
erfolgt in der Methode input: (siehe Listing 2–6). Diese Methode wird
aufgerufen (1), sobald eine Schaltfläche mit einer Zahl angeklickt
wurde, und erhält die eingegebene Zahl als Argument (siehe Listing 2–5).
Listing 2–5
Eingabe der Ziffer 2
- (IBAction)press2:(id)sender {
[self input:2]; 1
}
In der Ausgangsvariante des Taschenrechners ist nur die Addition enthalten. Dieser Zweig ist in (1) umgesetzt. Für die Subtraktion wird ein
weiterer Zweig (2) hinzugefügt. Wenn weder ein Plus noch ein Minus
vom Anwender gedrückt wird, soll einfach die eingegebene Zahl an die
bisherige Eingabe angehängt werden. Durch das Hinzufügen von Subtraktion kann nun auch eine negative Zahl dargestellt werden. Darum
ist der Algorithmus in (3) anzupassen. Die Ausgabe des Textes ist in
allen drei Varianten gleich, siehe (4). Für die Ausgabe der Zahl 0 ist
eine eigene Implementierungszeile (5) vorgesehen.
Listing 2–6
Umsetzung der
Rechenlogik
- (void) input:(int)theInput {
if (plusPressed) { 1]]
value = value + theInput;
[displayField setText:[[NSNumber numberWithInt:value]
stringValue]]; 4
plusPressed = NO;
minusPressed = NO;
} else if (minusPressed) { 2
value = value - theInput;
[displayField setText:[[NSNumber numberWithInt:value]
stringValue]]; 4
plusPressed = NO;
minusPressed = NO;
} else { 3
2.5 Beispiele aus dem iOS Dev Center nutzen
31
if (theInput != 0 || value != 0) {
if (value >= 0) {
value = value*10 + theInput;
}else {
value = value*10 - theInput;
}
[displayField setText:[[NSNumber numberWithInt:value]
stringValue]]; 4
} else {
[displayField setText:@"0"]; 5
}
}
}
Der letzte Schritt besteht darin, die Anwendung richtig zu initialisieren. Dabei wird der aktuelle Wert des Taschenrechners auf den Wert 0
gesetzt und die Variablen plusPressed und minusPressed auf NO gesetzt.
Die richtige Stelle ist bei Erscheinen der Eingabeoberfläche. Die passende Methode hierfür ist viewDidLoad (siehe Listing 2–7).
- (void)viewDidLoad {
[super viewDidLoad];
plusPressed = NO;
minusPressed = NO;
value = 0;
[displayField setText:@"0"];
}
2.5
Listing 2–7
Initialisierung bei Anzeige
der Oberfläche
Beispiele aus dem iOS Dev Center nutzen
Für einen schnellen Einblick in die Programmierung fürs iOS bieten
sich – neben unserer kleinen Einführung aus dem vorigen Abschnitt –
die »offiziellen« Beispiele aus dem iOS Dev Center an. Diese erreichen
Sie über den Link http://developer.apple.com/library/ios/navigation/#section=Resource%20Types&topic=Sample%20Code. Auf der
Übersichtsseite sehen Sie alle Beispiele mit ihrer jeweiligen thematischen Einordnung. Über die Spaltenköpfe (siehe Abb. 2–20) der Ansicht können Sie die Liste entsprechend sortieren. Für eine Suche steht
am oberen Rand der Liste eine Volltextsuche zur Verfügung.
Abb. 2–20
Liste der Beispiele im iOS
Dev Center
32
2 Installation und ein erstes Beispiel
Beschreibungsseite eines
Beispiels
Direkter Zugriff auf die
Quelldateien
About-Seite des Projektes
Download des Beispiels
Abb. 2–21
Seite des Beispiels
SeismicXML im iOS Dev
Center
Bei der Auswahl eines Beispiels (z.B. »GLPaint«) erscheint das selektierte Beispiel.
Die Einzelseiten der Beispiele sind alle nach dem gleichen Muster
aufgebaut (siehe Abb. 2–21). Die linke Seite (Table of Contents) enthält
einen Link auf die einzelnen Dateien des Beispiels. Zusätzlich besitzt
jedes Beispiel eine About-Seite mit einer Beschreibung des Beispiels.
Beim Klick auf eine einzelne Datei wird sie im aktuellen Browserfenster dargestellt. Damit können Sie die Quelldateien ansehen, ohne
dass Sie sie herunterladen müssen. Standardmäßig wird die About-Seite
des Projektes dargestellt.
Nach der Überschrift mit dem Namen des Beispiels enthält die
nächste Zeile die aktuelle Versionsnummer und das Datum der letzten
Änderung. In der Zeile Build Requirements folgt eine Aufzählung der
Anforderungen an das Entwicklungssystem, um das zur Verfügung
gestellte Beispiel selbst zu erzeugen.
Die letzte Informationszeile (Runtime Requirements) enthält die
notwendigen Anforderungen an das System, auf dem die Beispielanwendung ablaufen soll.
Für den Download der Quelldateien im Zip-Format steht eine
Schaltfläche über der Überschrift zur Verfügung. Die Schaltfläche trägt
den Titel Download Sample Code. Um die Änderungen an einem Beispiel nachzuverfolgen, bietet sich die Versionshistorie an, die über den
Link Revision History im linken Bereich angeboten wird.
2.6 Zusammenfassung
Alle Beispiele können Sie nach dem Extrahieren direkt über die enthaltene .xcodeproj-Datei in Xcode starten und übersetzen.
2.6
Zusammenfassung
In diesem Kapitel habe ich Ihnen zunächst das iOS Dev Center als das
zentrale Informationszentrum rund um die iPhone-Entwicklung vorgestellt. Danach haben wir einen kurzen Blick auf die Installation sowie
die Deinstallation des iOS SDK geworfen.
Anschließend haben wir auf Basis des auf der Buchwebseite zur Verfügung gestellten Beispiels my-calculator eine erste eigene Anwendung
entwickelt. Hier haben wir den Taschenrechner um die Grundrechenart
Subtraktion erweitert. In die Tiefen des iOS SDK ist dieses erste Beispiel noch nicht vorgedrungen, aber trotzdem sollten Sie schon ein erstes Gefühl für die Anwendungsprogrammierung mit dem iOS SDK entwickelt haben.
Außerdem wissen Sie nun, wo Sie innerhalb des iOS Dev Center den
Quellcode von weiteren Anwendungen finden und wie Sie ihn schnell
testen können. Diese Möglichkeit sollten Sie nutzen, um sich die neuen
Wissensbereiche rund um die iOS-Entwicklung auf praktischem Wege
zu erschließen.
33
Öffnen in Xcode
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertisement