Ecranul de blocare face parte dintr-un sistem de operare, utilizat în majoritatea cazurilor în dispozitive mobile, care împiedică intrarea accidentală. Acest sfat rapid vă va arăta cum să simulați un ecran de blocare Android cu ActionScript. Haide să mergem!
Să aruncăm o privire asupra rezultatului final pe care îl vom strădui:
Aceasta este o versiune foarte simplă a ecranului de blocare a modelului Android. Glisați mouse-ul de-a lungul punctelor din calea indicată de liniile albe semi-transparente pentru a "debloca" SWF-ul. Firește, liniile albe sunt doar acolo în scop demonstrativ!
Vom folosi aplicațiile mouse-ului și arrays pentru a stoca și compara intrarea utilizatorului și modelul corect. Un nou ecran va fi afișat când este introdus modelul corect.
Lansați Flash și creați un nou document Flash, setați dimensiunea scenei la 320x480px și rata de cadre la 24fps.
Aceasta este interfața pe care o vom folosi, punctele albe din imagine sunt MovieClips denumite de la stânga la dreapta unu doi trei… si asa mai departe. Liniile albe semi-transparente sunt folosite pentru a indica parola corectă (poate doriți să o eliminați pentru o utilizare reală).
Creați o nouă clasă ActionScript (Cmd + N), salvați fișierul ca Main.as și scrieți următoarele linii, citiți comentariile din cod pentru a înțelege pe deplin comportamentul clasei.
Modificați valorile în trece
pentru a schimba modelul de deblocare.
pachet import flash.display.Sprite; importul flash.events.MouseEvent; import fl.transitions.Tween; import fl.transitions.easing.Strong; clasa publică principală extinde Sprite private var dots: Array = []; // Stochează în scenă movieclips modelul priv var: Array = []; // Modelul introdus de userul privat al pass pass: Array = [1,2,3,6,9,8,5]; // Modelul corect pentru a continua funcția publică Main (): void dots = [una, două, trei, patru, cinci, șase, șapte, opt, nouă]; // adăugați clipurile în stadiul addListeners (); funcția privată addListeners (): void // adaugă ascultătorii la fiecare punct var dotsLength: int = dots.length; pentru (var i: int = 0; i < dotsLength; i++) dots[i].addEventListener(MouseEvent.MOUSE_DOWN, initiatePattern); dots[i].addEventListener(MouseEvent.MOUSE_UP, stopPattern); /* Adds a mouse over listener and uses it to add the number of the dot to the pattern */ private function initiatePattern(e:MouseEvent):void var dotsLength:int = dots.length; for (var i:int = 0; i < dotsLength; i++) dots[i].addEventListener(MouseEvent.MOUSE_OVER, addPattern); pattern.push(dots.indexOf(e.target) + 1); //adds the array index number of the clip plus one, because arrays are 0 based private function addPattern(e:MouseEvent):void pattern.push(dots.indexOf(e.target) + 1); //adds the pattern on mouse over private function stopPattern(e:MouseEvent):void //stops storing the pattern on mouse up var dotsLength:int = dots.length; for (var i:int = 0; i < dotsLength; i++) dots[i].removeEventListener(MouseEvent.MOUSE_OVER, addPattern); checkPattern(); private function checkPattern():void //compares the patterns var pLength:int = pass.length; var correct:int = 0; for (var i:int = 0; i < pLength; i++) //compares each number entered in the user array to the pass array if (pass[i] == pattern[i]) correct++; if (correct == pLength) //if the arrays match var sView:SecondView = new SecondView(); //add a new view addChild(sView); var tween:Tween = new Tween(sView,"x",Strong.easeOut,320,0,0.8,true); pattern = []; //clears the user array
Nu uitați să adăugați numele clasei la Clasă domeniu în Publica secțiunea din Proprietăți panou.
Ați creat un ecran de blocare util pentru aplicațiile dvs. sau chiar pentru un site Web. Puteți adapta proiectul astfel încât să răspundă nevoilor dvs. sau să utilizați această tehnică pentru a vă construi LockScreen personalizat. Ce zici de folosirea obiectului grafic al unui Sprite pentru a desena linii care urmează calea mouse-ului?
Sper că ți-a plăcut acest tutorial, mulțumesc pentru lectură!
Nota editorului: Nu se poate obține suficient de Android? Check out cele mai recente Envato ™ site: Android.AppStorm.net!