Använda ActionScript-exempel

Att köra ett exempel på en ActionScript 3.0-kod är det bästa sättet att lära sig hur speciella klasser och metoder fungerar. Du kan använda exempel på olika sätt, beroende på enheten som du använder eller riktar in dig mot.

Datorer som kör Flash Professional eller Flash Builder
Mer information om dessa utvecklingsmiljöer för hur man använder ActionScript 3.0-exempel finns i Köra ActionScript 3.0-exempel i Flash Professional och Köra ActionScript 3.0-exempel i Flash Builder . Använd trace-satser eller andra felsökningsverktyg för att öka förståelsen för hur ett kodexempel fungerar.

Mobila enheter
Du kan köra ActionScript 3.0-kodexempel på mobila enheter som har stöd för Flash Player 10.1 och senare versioner. Mer information finns i Köra ActionScript 3.0-exempel på mobila enheter . Du kan även köra dessa exempel på datorn om du använder Flash Professional eller Flash Builder.

Tv-enheter
Trots att du inte kan köra dessa exempel på tv-enheter, kan du fortfarande lära dig av exemplen genom att köra dem på datorn. Mer information om webbplatsen Adobe Developer Connection och hur du utvecklar program för tv-enheter finns på Flash Platform for TV

Exempeltyper

De olika typerna av ActionScript 3.0-kodexempel är:

Exempel på kodfragment

Ett exempel på kodfragment ser ut enligt följande:

var x:int = 5; 
trace(x); // 5

Kodfragment innehåller endast tillräcklig kod för att demonstrera en enskild idé. De innehåller vanligtvis inte paket- eller klassuttryck.

Klassrelaterade exempel

Många exempel visar källkoden för en komplett ActionScript-klass. Ett klassrelaterat exempel ser ut enligt följande:

package { 
    public class Example1 { 
        public function Example1():void { 
            var x:int = 5; 
            trace(x); //5 
        } 
    } 
}

Koden för ett klassrelaterat exempel innehåller ett paketuttryck, en klassförklaring och en konstruktionsfunktion.

Praktiska exempel med flera källfiler

Många av artiklarna i Utvecklarhandbok för ActionScript 3.0 avslutas med ett praktiskt exempel som visar hur en viss ActionScript-funktion kan användas i ett praktiskt, verkligt sammanhang. Exemplen innehåller vanligtvis flera filer:

  • En eller flera ActionScript-källfiler

  • En .FLA-fil för användning i Flash Professional

  • En eller flera MXML-filer för användning i Flash Builder

  • Datafiler, bildfiler, ljudfiler eller andra resurser som används i exempelprogrammet (tillval).

Praktiska exempel levereras normalt som arkivfiler i ZIP-format.

Lista med utvecklarhandboksexempel i ZIP-filen

ZIP-filen för Flash Professional CS5 och Flex 4 (hämtas från www.adobe.com/go/learn_programmingAS3samples_flash_se ) innehåller följande exempel:

Praktiska exempel finns även i många av snabbstartsartiklarna i Flash Developer Center och Flex Developer Center.

Köra ActionScript 3.0-exempel i Flash Professional

Använd en av följande procedurer (vilken beror på exempeltyp) för att köra ett exempel med Flash Professional.

Köra ett kodfragment i Flash Professional

Så här kör du ett kodfragment i Flash Professional:

  1. Välj Arkiv > Nytt.

  2. I dialogrutan Nytt dokument väljer du Flash-dokument och klickar på OK.

    Ett nytt Flash-fönster visas.

  3. Klicka på den första bildrutan i det första lagret i tidslinjepanelen.

  4. Skriv eller klistra in kodfragmentexemplet på åtgärdspanelen.

  5. Välj Arkiv > Spara. Ge filen ett namn och klicka på OK.

  6. Välj Kontroll > Testa filmen om du vill testa exemplet.

Köra ett klassrelaterat exempel i Flash Professional

Så här kör du ett klassrelaterat exempel i Flash Professional:

  1. Välj Arkiv > Nytt.

  2. I dialogrutan Nytt dokument väljer du ActionScript-fil och klickar på OK. Ett nytt redigeringsfönster visas.

  3. Kopiera den klassrelaterade exempelkoden och klistra in den i redigeringsfönstret.

    Om klassen är huvuddokumentklass för programmet måste den utöka klassen MovieClip:

    import flash.display.MovieClip; 
    public class Example1 extends MovieClip{ 
    //... 
    }

    Kontrollera även att alla klasser som exemplet refererar till deklareras med import -satser.

  4. Välj Arkiv > Spara. Ge filen samma namn som klassen i exemplet (till exempel SammanhangMenyExempel.as).
    Obs! Vissa av de klassbaserade exemplen, som flashx.textLayout.container.ContainerController , innehåller flera nivåer i paketdeklarationen ( package flashx.textLayout.container.examples { ). För de här exemplen sparar du filen i en undermapp som matchar paketdeklarationen (flashx/textLayout/container/examples) eller tar bort paketnamnet (så att ActionScript-koden börjar med bara package { ), så kan du testa filen från vilken plats som helst.
  5. Välj Arkiv > Nytt.

  6. I dialogrutan Nytt dokument väljer du Flash-dokument (ActionScript 3.0) och klickar på OK. Ett nytt Flash-fönster visas.

  7. I panelen Egenskaper i fältet Dokumentklass anger du namnet på exempelklassen som bör motsvara namnet på källfilen i ActionScript som du just sparade (till exempel SammanhangMenyExempel).

  8. Välj Arkiv > Spara. Ge FLA-filen samma namn som klassen i exemplet (till exempel SammanhangMenyExempel.fla).

  9. Välj Kontroll > Testa filmen om du vill testa exemplet.

Köra ett praktiskt exempel i Flash Professional

Praktiska exempel levereras normalt som arkivfiler i ZIP-format. Så här kör du ett praktiskt exempel i Flash Professional:

  1. Packa upp arkivfilen i en valfri mapp.

  2. Välj Arkiv > Öppna i Flash Professional.

  3. Bläddra till den mapp där du packade upp arkivfilen. Välj FLA-filen i den mappen och klicka på Öppna.

  4. Välj Kontroll > Testa filmen om du vill testa exemplet.

Köra ActionScript 3.0-exempel i Flash Builder

Använd en av följande procedurer (vilken beror på exempeltyp) för att köra ett exempel med Flash Builder.

Köra ett kodfragment i Flash Builder

Så här kör du ett kodfragment i Flash Builder:

  1. Skapa antingen ett nytt Flex-projekt (Arkiv > Nytt > Nytt Flex-projekt) eller skapa ett nytt MXML-program inom ett befintligt Flex-projekt (Arkiv > Nytt > MXML-program). Ge projektet eller programmet ett beskrivande namn (som SammanhangMenyExempel).

  2. Lägg till en <mx:Script> -tagg i den genererade MXML-filen.

  3. Klistra in innehållet i kodfragmentexemplet mellan taggarna <mx:Script> och </mx:Script> . Spara MXML-filen.

  4. Om du vill köra exemplet väljer du Kör > Kör menyalternativ för MXML-filen (som Kör > Kör SammanhangMenyExempel).

Köra ett klassrelaterat exempel i Flash Builder

Så här kör du ett klassrelaterat exempel i Flash Builder:

  1. Välj Arkiv > Nytt > ActionScript-projekt.

  2. Ange namnet på den primära klassen (som SammanhangMenyExempel) i fältet Projektnamn. Använd standardvärden för andra fält (eller ändra dem enligt din specifika miljö). Klicka på Slutför om du vill skapa projektet i ActionScript-filen.

  3. Radera allt genererat innehåll från ActionScript-filen. Klistra in exempelkoden, inklusive paket- och importuttryck, i ActionScript-filen och spara filen.

    Obs! Vissa av de klassbaserade exemplen, som flashx.textLayout.container.ContainerController , innehåller flera nivåer i paketdeklarationen ( package flashx.textLayout.container.examples { ). För de här exemplen sparar du filen i en undermapp som matchar paketdeklarationen (flashx/textLayout/container/examples) eller tar bort paketnamnet (så att ActionScript-koden börjar med bara package { ), så kan du testa filen från vilken plats som helst.
  4. Om du vill köra exemplet väljer du Kör > Kör menyalternativ för ActionScript-klassnamnet (som Kör > Kör SammanhangMenyExempel).

Köra ett praktiskt exempel i Flash Builder

Praktiska exempel levereras normalt som arkivfiler i ZIP-format. Så här kör du ett praktiskt exempel i Flash Builder:

  1. Packa upp arkivfilen i en valfri mapp. Ge mappen ett beskrivande namn (som (SammanhangMenyExempel).

  2. Välj Arkiv > Nytt Flex-projekt i Flash Builder. I avsnittet Projektplats klickar du på Bläddra och väljer mappen med exempelfilerna. I fältet Projektnamn anger du mappens namn (som (SammanhangMenyExempel). Använd standardvärden för andra fält (eller ändra dem enligt din specifika miljö). Klicka på Nästa om du vill fortsätta.

  3. I panelen Utdata klickar du på Nästa om du vill acceptera standardvärdet.

  4. I panelen Källsökvägar klickar du på knappen Bläddra intill fältet Huvudprogramfil. Välj MXML-exempelfilen från exempelmappen. Klicka på Slutför om du vill skapa projektfilerna.

  5. Om du vill köra exemplet väljer du Kör > Kör menyalternativ för MXML-filen (som Kör > Kör SammanhangMenyExempel).

Köra ActionScript 3.0-exempel på mobila enheter

Du kan köra ActionScript 3.0-kodexempel på mobila enheter som stödjer Flash Player 10.1. Emellertid är det vanligast att köra kodexempel för att lära sig hur särskilda klasser och metoder fungerar. I så fall kör du exemplet på en icke-mobil enhet som en stationär dator. På den stationära datorn kan du använda spårningsuttryck och andra felsökningsverktyg i Flash Professional eller Flash Builder för att öka din förståelse av ett kodexempel.

Om du vill köra exemplet på en mobil enhet kan du antingen kopiera filerna till enheten eller till en webbserver. Om du vill kopiera filerna till enheten och köra exemplet i webbläsaren gör du följande:

  1. Skapa en SWF-fil genom att följa instruktionerna i Köra ActionScript 3.0-exempel i Flash Professional eller i Köra ActionScript 3.0-exempel i Flash Builder . I Flash Professional skapar du SWF-filer genom att välja Kontroll > Testa filmen. I Flash Builder skapar du SWF-filer genom att köra, felsöka eller bygga dina Flash Builder-projekt.

  2. Kopiera SWF-filen till en katalog på den mobila enheten. Använd den programvara som följer med enheten för att kopiera filen.

  3. Ange fil://-adress för SWF-filen i webbläsarens adressfält på den mobila enheten. Ange exempelvis fil:://program/mittExempel.swf

Om du vill kopiera filer till en webbserver och köra exemplet i enhetens webbläsare gör du följande:

  1. Skapa en SWF-fil och en HTML-fil. Följ först instruktionerna i Köra ActionScript 3.0-exempel i Flash Professional eller i Köra ActionScript 3.0-exempel i Flash Builder . I Flash Professional innebär Kontroll > Testa filmen att du skapar endast SWF-filen. Om du vill skapa bägge filerna väljer du först Flash och HTML på fliken Format i dialogrutan Publiceringsinställningar. Sedan väljer du Arkiv > Publicera för att skapa både HTML- och SWF-filer. I Flash Builder skapar du både SWF-filer och HTML-filer när du kör, felsöker eller bygger ditt Flash Builder-projekt.

  2. Kopiera SWF-filen och HTML-filen till en katalog på webbservern.

  3. Ange HTTP-adressen för HTML-filen i webbläsarens adressfält på den mobila enheten. Ange exempelvis http://www.minWebbserver/exempel/mittExempel.html

Innan du kör ett exempel på en mobil enhet bör du överväga följande problem.

Visningsstorlek

Visningsstorleken som används när du kör ett exempel på en mobil enhet är mycket mindre än när du använder en icke-mobil enhet. Många exempel kräver ingen särskild visningsstorlek. När du skapar SWF-filen anger du en visningsstorlek som är lämplig för din mobila enhet. Ange exempelvis 176 x 208 pixlar.

Syftet med de praktiska exemplen i Utvecklarhandbok för ActionScript 3.0 är att illustrera olika koncept och klasser i ActionScript 3.0. Deras användargränssnitt har utformats för att se bra ut och fungera väl på en stationär eller bärbar dator. Även om exemplen fungerar på mobila enheter är visningsstorleken och användargränssnittet inte lämpliga för små skärmar. Adobe rekommenderar att du kör det praktiska exemplet på en dator för att lära dig ActionScript, och sedan använda relevanta kodfragment i dina mobilprogram.

Textfält i stället för spåruttryck

När du kör ett exempel på en mobil enhet kan du inte se utdata från exemplets spåruttryck. Skapa en instans i stället för klassen TextField om du vill se utdata. Lägg sedan till texten från spåruttrycken till egenskapen text i textfältet.

Du kan använda följande funktion om du vill ställa in ett textfält för spårning:

function createTracingTextField(x:Number, y:Number, 
                                width:Number, height:Number):TextField { 
           
    var tracingTF:TextField = new TextField(); 
    tracingTF.x = x; 
    tracingTF.y = y; 
    tracingTF.width = width; 
    tracingTF.height = height; 
     
    // A border lets you more easily see the area the text field covers. 
    tracingTF.border = true; 
    // Left justifying means that the right side of the text field is automatically 
    // resized if a line of text is wider than the width of the text field. 
    // The bottom is also automatically resized if the number of lines of text 
    // exceed the length of the text field. 
    tracingTF.autoSize = TextFieldAutoSize.LEFT; 
     
    // Use a text size that works well on the device. 
    var myFormat:TextFormat = new TextFormat(); 
    myFormat.size = 18; 
    tracingTF.defaultTextFormat = myFormat; 
     
    addChild(tracingTF); 
    return tracingTF; 
}

Lägg exempelvis till funktionen till dokumentklassen som en privat funktion. Spåra sedan data i andra metoder i dokumentklassen med kod som följande:

var traceField:TextField = createTracingTextField(10, 10, 150, 150); 
// Use the newline character "\n" to force the text to the next line. 
traceField.appendText("data to trace\n"); 
traceField.appendText("more data to trace\n"); 
// Use the following line to clear the text field. 
traceField.appendText("");

Med metoden appendText() accepteras endast ett värde som en parameter. Detta värde är en sträng (antingen en String-instans eller en stränglitteral). Om du vill skriva ut värdet för en variabel som inte är en sträng, måste du först konvertera värdet till ett String-värde. Det enklaste sättet att göra detta är att anropa objektets toString() -metod:

var albumYear:int = 1999; 
traceField.appendText("albumYear = "); 
traceField.appendText(albumYear.toString());

Textstorlek

I många textexempel används textfält för att illustrera ett koncept. Ibland medför en justering av textstorleken i textfältet bättre läsbarhet på en mobil enhet. Om exempelvis en textfältsinstans med namnet myTextField används i ett exempel ändras dess textstorlek med följande kod:

// Use a text size that works well on the device. 
var myFormat:TextFormat = new TextFormat(); 
myFormat.size = 18; 
myTextField.defaultTextFormat = myFormat

Samla in indata från användarna

Mobilens operativsystem och webbläsare samlar in vissa indata från användarna som inte tas emot av SWF-innehållet. Specifikt beteende beror på operativsystem och webbläsare men oväntat beteende kan förekomma när du kör exemplen på en mobil enhet. Läs mer i Prioritet för tangentbordshändelser .

Vidare är användargränssnitten i många exempel utformade för stationära eller bärbara datorer. Exempelvis är de flesta av de praktiska exemplen i Utvecklarhandbok för ActionScript 3.0 lämpliga för visning på stationära datorer. Därför visas ibland inte helheten på den mobila enhetens skärm. Förmågan att panorera genom webbläsarens innehåll beror på webbläsaren. Vidare är exemplen inte utformade för att fånga eller hantera bläddrings- eller panoreringshändelser. Därför är vissa exempels användargränssnitt inte lämpliga att köra på en liten skärm. Adobe rekommenderar att du kör exemplen på en dator för att lära dig ActionScript, och sedan använda relevanta kodfragment i dina mobilprogram.

Läs mer i Panorering och rullning av visningsobjekt .

Hantera fokus

Vissa exempel kräver att du ger ett fält fokus. Genom att ge ett fält fokus kan du exempelvis ange text eller välja en knapp. För att ge ett fält fokus använder du den mobila enhetens pekarenhet, exempelvis ett stift eller ditt finger. Använd annars den mobila enhetens navigationsknappar för att ge fältet fokus. Om du vill välja en knapp som har fokus använder du Välj-knappen på den mobila enheten, precis som du använder Retur på en dator. På vissa enheter måste du trycka på knappen två gånger för att välja den.

Läs mer om fokus i Hantera fokus .

Hantera musåtgärder

Många åtgärder kräver musrörelser. På en dator kan de här musrörelserna inträffa exempelvis när en användare rullar över ett skärmobjekt med musen eller klickar med musknappen på ett skärmobjekt. Rörelser med pekarenheter som stift eller finger kallas pekrörelser på mobila enheter. I Flash Player 10.1 omvandlas pekrörelser till musrörelser. I den omvandlingen garanteras felfri funktion för SWF-innehåll som utvecklades före Flash Player 10.1. Därför fungerar exempel när en pekenhet används för att välja eller dra och visa objekt.

Prestanda

Mobila enheter har mindre bearbetningskraft än stationära enheter. Vissa CPU-krävande exempel uppvisar ibland sämre prestanda på mobila enheter. Till exempel utför exemplet i Exempel på Drawing API: algoritmisk visuell generator omfattande uträkningar och ritningar innan varje bildruta genereras. När exemplet körs på en dator illustreras andra ritnings-API:er. Emellertid är exemplet inte lämpligt på vissa mobila enheter på grund av begränsade prestanda.

Mer information om prestanda på mobilenheter finns i Optimera prestanda för Flash-plattformen .

God praxis

I exemplen tas inte hänsyn till god praxis i programutveckling för mobila enheter. Begränsningar i minne och bearbetningskraft i mobila enheter kräver särskild hänsyn. På liknande sätt finns i användargränssnittet för en liten skärm andra krav än för en stationär skärm. Mer information om hur du utvecklar program för mobilenheter finns i Optimera prestanda för Flash-plattformen .