Schriftarten und Texteingabe

Das beste Aussehen erzielen Sie mit Geräteschriftarten. Die folgenden Schriftarten sind zum Beispiel Geräteschriftarten auf dem iPhone:

  • Serifen: Times New Roman, Georgia und _serif

  • Ohne Serifen: Helvetica, Arial, Verdana, Trebuchet, Tahoma und _sans

  • Feste Breite: Courier New, Courier und _typewriter

Verwenden Sie Schriftarten mit einer Größe von mindestens 14 Pixel.

Verwenden Sie Geräteschriftarten für bearbeitbare Textfelder. Geräteschriftarten in Textfeldern werden auch schneller dargestellt als eingebettete Schriftarten.

Verwenden Sie keinen unterstrichenen Text für Texteingabefelder. Legen Sie auch nicht die Ausrichtung des Textfelds fest. Eingabetextfelder auf dem iPhone unterstützen nur die linksbündige Ausrichtung (Standardeinstellung).

Wenn Sie in Flash Professional CS5 die TLF-Texteinstellung für ein Textfeld verwenden, deaktivieren Sie in den ActionScript 3.0-Einstellungen die gemeinsame Laufzeitbibliothek (Runtime Shared Library, RSL) in der Standardverknüpfung. Andernfalls funktioniert die Anwendung nicht auf dem iPhone, da sie versucht, die RSL-SWF-Datei zu verwenden.

  1. Wählen Sie „Datei“ > „Einstellungen für Veröffentlichungen“.

  2. Klicken Sie im Dialogfeld „Einstellungen für Veröffentlichungen“ auf die Registerkarte „Flash“.

  3. Klicken Sie auf die Schaltfläche „Einstellungen“ neben der Dropdownliste „Skript“.

  4. Klicken Sie auf die Registerkarte „Bibliothekspfad“.

  5. Wählen Sie in der Dropdownliste „Standardverknüpfung“ den Eintrag „Im Code zusammengeführt“.

Ziehen Sie die Implementierung von Alternativen zu Texteingabefeldern in Betracht. Wenn Benutzer zum Beispiel einen numerischen Wert eingeben sollen, brauchen Sie kein Textfeld. Sie können einfach zwei Schaltflächen zum Erhöhen oder Verringern des Werts bereitstellen.

Beachten Sie den Platz, der von der virtuellen Tastatur benötigt wird. Wenn die virtuelle Tastatur aktiviert wird (zum Beispiel, wenn ein Benutzer auf ein Textfeld tippt), passt die Anwendung die Position auf der Bühne an. Die automatische Neupositionierung gewährleistet, dass das ausgewählte Eingabetextfeld sichtbar ist:

  • Ein Textfeld am oberen Rand der Bühne wird zum oberen Rand des sichtbaren Bühnenbereichs verschoben. (Der sichtbare Bühnenbereich ist kleiner, weil die virtuelle Tastatur genügend Platz haben muss.)

  • Ein Textfeld am unteren Rand der Bühne bleibt am unteren Rand des neuen Bühnenbereichs.

  • Ein Textfeld in einem anderen Teil der Bühne wird zur vertikalen Mitte der Bühne verschoben.

Wenn der Benutzer auf ein Textfeld tippt, um es zu bearbeiten (und die Bildschirmtastatur angezeigt wird), setzt das TextField-Objekt ein focusIn -Ereignis ab. Sie können einen Ereignis-Listener für dieses Ereignis hinzufügen, um das Textfeld neu zu positionieren.

Ein einzeiliges Textfeld enthält eine Löschen-Schaltfläche (rechts neben dem Text), wenn der Benutzer den Text bearbeitet. Diese Löschen-Schaltfläche wird jedoch nicht angezeigt, wenn das Textfeld zu schmal ist.

Nachdem der Benutzer den Text in einem einzeiligen Textfeld bearbeitet hat, schließt er die Bildschirmtastatur, indem er auf die Schaltfläche „Fertig“ tippt.

Nach dem Bearbeiten von Text in einem mehrzeiligen Textfeld schließt der Benutzer die Bildschirmtastatur, indem er außerhalb des Textfelds auf den Bildschirm tippt. Damit wird der Fokus vom Textfeld genommen. Achten Sie beim Entwerfen der Anwendung darauf, dass bei der Anzeige der Bildschirmtastatur außerhalb des Textfelds noch Platz ist. Wenn das Textfeld zu groß ist, ist unter Umständen kein Bereich zum Tippen außerhalb des Textfelds sichtbar.

Die Verwendung bestimmter Flash Professional CS5-Komponenten verhindert, dass der Fokus von einem Textfeld genommen werden kann. Diese Komponenten sind für den Einsatz auf Desktopcomputern gedacht, wo dieses Fokusverhalten erwünscht ist. Eine dieser Komponenten ist die TextArea-Komponente. Wenn sie den Fokus hat (und bearbeitet wird), können Sie ihr den Fokus nicht durch das Klicken auf ein anderes Anzeigeobjekt nehmen. Auch die Platzierung einiger anderer Flash Professional CS5-Komponenten kann verhindern, dass der Fokus vom bearbeiteten Textfeld genommen wird.

Erstellen Sie keine Abhängigkeiten von Tastaturereignissen. Einige SWF-Inhalte, die für die Webverwendung entwickelt wurden, ermöglichen dem Benutzer zum Beispiel die Steuerung der Anwendung über die Tastatur. Auf dem iPhone ist die Bildschirmtastatur jedoch nur präsent, wenn der Benutzer ein Textfeld bearbeitet. Eine iPhone-Anwendung setzt nur dann Tastaturereignisse ab, wenn die Bildschirmtastatur angezeigt wird.