I den här snabba tipsen kommer jag att visa dig hur du skapar en raderingseffekt som inspireras av iPhone iOS-gränssnittet.
Låt oss ta en titt på det slutliga resultatet vi ska arbeta för:
Tryck och håll in ikonen "a" och klicka sedan på "x" när den visas ...
På ett pre-made iPhone-gränssnitt använder vi Timer, Tween och Mouse Events för att skapa en snygg effekt för gränssnitt.
Starta Flash och skapa ett nytt Flash-dokument, sätt scenstorleken till 255x496px och bildhastigheten till 24fps.
Detta är gränssnittet vi ska använda, det innehåller en iPhone 4-mall och några GUI-element som du kan ladda ner från respektive författares webbplats.
Det finns också en ikon som är ett interaktivt element.
Det här är den klass som gör allt arbete. Det visar bara den faktiska arbetskoden, var god läs kommentarerna för att förstå vad som händer ...
privat var timer: Timer = Ny Timer (1000); // Tiden för att hålla musknappen nere på ikonen för att visa raderingsknappen privat var tiltTimer: Timer = Ny Timer (80); // Rotations tiden ändras, gör skakningsverkan privat var rotationValue: int = 2; // Den rotation som är önskad för skakningen av privatvariationen: Tween; // En tween-instans för att animera alarmdialogens allmänna funktion Main (): void / * Dölj element * / hideObjects (appIcon.deleteButton, deleteAlert, darkScreen); / * Lägg till nödvändiga lyssnare * / deleteAlert.cancelBtn.addEventListener (MouseEvent.MOUSE_UP, avbryt); deleteAlert.deleteBtn.addEventListener (MouseEvent.MOUSE_UP, deleteApp); appIcon.deleteButton.addEventListener (MouseEvent.MOUSE_UP, displayAlert); appIcon.addEventListener (MouseEvent.MOUSE_UP, stopTimer); appIcon.addEventListener (MouseEvent.MOUSE_DOWN, pressAndHold); / * Dölj objektfunktion * / privat funktion hideObjects (... objekt): void for (var i: int = 0; i < objects.length; i++) objects[i].visible = false; /*Starts the timer when the mouse is down*/ private function pressAndHold(e:MouseEvent):void timer.start(); timer.addEventListener(TimerEvent.TIMER, showDeleteButton); /*If mouse up, timer stops*/ private function stopTimer(e:MouseEvent):void timer.stop(); /*if the hold timer completes, the delete button is shown and the icon shakes*/ private function showDeleteButton(e:TimerEvent):void timer.stop(); appIcon.deleteButton.visible = true; tiltTimer.addEventListener(TimerEvent.TIMER, tilt); tiltTimer.start(); /*The shake function, changes the rotation every time the tiltTimer completes*/ private function tilt(e:TimerEvent):void appIcon.rotation = rotationValue; rotationValue *= -1; /*if the delete button is pressed the alert is shown*/ private function displayAlert(e:MouseEvent):void deleteAlert.visible = true; darkScreen.visible = true; tween = new Tween(deleteAlert,"scaleX",Back.easeOut,0.3,1,0.5,true); tween = new Tween(deleteAlert,"scaleY",Back.easeOut,0.3,1,0.5,true); /*removes the icon if the delete button in the alert is clicked*/ private function deleteApp(e:MouseEvent):void hideObjects(appIcon, deleteAlert, darkScreen); /* removes the alert, stops the tilt and doesn't remove the icon, called by the cancel button*/ private function cancel(e:MouseEvent):void hideObjects(appIcon.deleteButton, deleteAlert, darkScreen); tiltTimer.stop(); appIcon.rotation = 0;
Kom ihåg att lägga till klassnamnet i klassfältet i avsnittet Publicera i fönstret Egenskaper.
Så där har du det! En fin effekt som du kan lägga till i dina applikationer, experimentera med dess användningar!
Jag hoppas att du gillade den här handledningen, tack för att du läste :)