Teckensnitt och textinmatning

För bästa resultat bör du använda enhetsteckensnitt. Följande teckensnitt är till exempel enhetsteckensnitt på en iPhone:

  • Serif: Times New Roman, Georgia och _serif

  • Sans-serif: Helvetica, Arial, Verdana, Trebuchet, Tahoma och _sans

  • Fast bredd: Courier New, Courier och _typewriter

Använd teckensnitt som är 14 pixlar eller större.

Använd enhetsteckensnitt för redigerbara textfält. Enhetsteckensnitt i textfält återges också snabbare än inbäddade teckensnitt.

Använd inte understruken text för indatafält. Ställ inte heller in textjusteringar i textfältet. Indatatextfält i iPhone har endast stöd för vänsterjusterad text (standard).

Om du använder inställningen för TLF-text för ett textfält i Flash Professional CS5, ska du stänga av RSL-biblioteket i standardlänkningen i ActionScript 3.0-inställningarna. Annars kommer inte programmet att fungera på iPhone-enheten eftersom den då försöker att använda SWF-filen för RSL-biblioteket:

  1. Välj Arkiv > Publiceringsinställningar.

  2. I dialogrutan Publiceringsinställningar klickar du på Flash-fliken.

  3. Klicka på knappen Skript till höger om listrutan Skript (ActionScript 3.0).

  4. Klicka på fliken Bibliotekssökväg.

  5. Välj Sammanfogad i kod i listrutan Standardlänkning.

Den kan även vara en bra idé att implementera alternativ till inmatning i textfält. Om du till exempel vill att användaren ska ange ett numeriskt värde behöver du inte använda ett textfält. Du kan istället använda två knappar för att höja eller sänka ett värde.

Var medveten om det utrymme som används av det virtuella tangentbordet. När det virtuella tangentbordet aktiveras (till exempel när en användare trycker på ett textfält) anpassar programmet scenens position. Den automatiska ändringen av positionen ser till att det markerade textfältet för inmatning är synligt:

  • Ett textfält högst upp på scenen flyttas överst på det synliga scenområdet. (Det synliga scenområdet är mindre för att även rymma det virtuella tangentbordet.)

  • Ett textfält längst ned på scenen förblir längst ned på det nya scenområdet.

  • Ett textfält på någon annan del av scenen flyttas till den vertikala mittpositionen på scenen.

När användaren klickar i ett textfält för att redigera det (och det virtuella tangentbordet visas), skickar objektet TextField en focusIn -händelse. Du kan lägga till en händelseavlyssnare för den här händelsen för att flytta textfältet.

Vid textfält med endast en rad visas en raderingsknapp (till höger om texten) när användaren redigerar texten. Den här knappen visas emellertid inte om textfältet är för nätt tilltaget.

Efter redigering av textfält med en rad stänger användaren det virtuella tangentbordet genom att peka på Klar på tangentbordet.

Efter redigering av textfält med flera rader stänger användaren det virtuella tangentbordet genom att peka utanför textfältet. Detta leder till att fokus tas bort från textfältet. Se till att du i din design tar med områden utanför textfältet när virtuella tangentbord visas. Om textfältet är för stort kommer kanske inga andra områden att kunna visas.

Om du använder vissa andra Flash Professional CS5-komponenter kan du undvika att fokus tas bort från ett textfält. Dessa komponenter är avsedda att användas för datorer, där detta fokusbeteende är önskvärt. En sådan komponent är TextArea-komponenten. När den är i fokus (och redigeras) kan du inte ta bort fokus från den genom att klicka på ett annat visningsobjekt. Du kan även placera andra Flash Professional CS5-komponenter på scenen för att förhindra att fokus ändras från textfältet som redigeras.

Förlita dig inte på tangentbordshändelser. I SWF-innehåll som är utformat för webben kan till exempel tangentbordet användas för att låta användaren kontrollera programmet. Men på en iPhone visas det virtuella tangentbordet endast när användaren redigerar ett textfält. För iPhone-program skickas endast tangentbordshändelser när det virtuella tangentbordet är synligt.