A Corona SDK grafikus létrehozásának, manipulálásának és kezelésének kulcseleme a megjelenítési objektum. Nem csak ezt az objektumot használhatjuk egy kép fájlból való megjelenítéséhez, talán éppen annyira fontos, hogy lehetővé teszi a képek csoportosítását. Ez lehetővé teszi, hogy egyszerre egy egész grafikát mozgasson a képernyőn, és rétegbeli grafikát tetejére helyezve.
Ez a bemutató bemutatja a kijelzőcsoportok használatának alapjait a projekt grafikai objektumainak rendezéséhez. Ezt két különböző réteg létrehozásával lehet bemutatni, az egyik pedig a normál képernyőt, a másik a modális réteget jelenti, amely a tetejére kerül. A grafika rétegezése mellett az átmeneti objektumot is használjuk az egész modális csoport áthelyezésére.
Hogyan kell az alkalmazásodat piacra dobni?
Jegyzet: Ennek az oktatóanyagnak a követéséhez két képre van szüksége: image1.png és image2.png. Ezek lehetnek bármilyen kép, amelyet választ, de a bemutató jobban fog működni, ha kb. 100 képpontról 100 képpontról van szó. Ez lehetővé teszi, hogy könnyedén megnézzük, mi történik a képekkel.
Az induláshoz megnyitunk egy új fájlt: main.lua, és megkezdjük kódunk építését:
displayMain = display.newGroup (); displayFirst = display.newGroup (); displaySecond = display.newGroup (); global_move_x = display.contentWidth / 5;
A kód ezen része felállítja az ui könyvtárat, és megjeleníti a megjelenítési csoportokon keresztül: displayMain, displayFirst és displaySecond. Ezeket használjuk a grafika első rétegére, majd mozgatni őket. A global_move_x változó a kijelző szélességének 20% -ára van állítva, így láthatjuk a mozgást.
function setupScreen () displayMain: insert (displayFirst); displayMain: insert (displaySecond); displayFirst: toFront (); displaySecond: toFront (); helyi háttér = display.newImage ("image1.png", 0,0); displayFirst: szúrja (háttér); helyi háttér = display.newImage ("image2.png", 0,0); displaySecond: szúrja (háttér); vég
A setupScreen funkció bemutatja, hogyan lehet megjelenítési csoportokat hozzáadni a fő kijelzőcsoporthoz. A toFront () függvénnyel a különböző grafikus rétegek beállítását is használjuk.
Ebben a példában nem feltétlenül szükséges a kijelző első elhelyezését elölről, mivel alapértelmezés szerint a második másodperc alatt jelenik meg, de célszerű az egyes megjelenítő csoportok réteg szerinti megkülönböztetése. A legtöbb projekt több mint két réteggel fog befejezni.
Mindegyik csoporthoz hozzáadtunk egy képet. Amikor elindítjuk az alkalmazást, a második képnek az első kép tetején kell lennie.
function screenLayer () kijelzőFirst: toFront (); vég
A grafikát a displayFirst csoport tetején helyeztük el a displaySecond csoporttal. Ezzel a funkcióval a displayFirst elöl kerül.
függvény moveOne () displaySecond.x = displaySecond.x + global_move_x; vég
A moveOne funkció a második képet jobbra húzza a képernyő szélességének 20% -ával. Amikor ezt a funkciót hívjuk, a displaySecond csoport a displayFirst csoport mögött lesz.
függvény moveTwo () displayMain.x = displayMain.x + global_move_x; vég
A moveTwo funkció a jobb oldali képeket a képernyő szélességének 20% -ával mozgatja. Azonban, ahelyett, hogy egyenként mozgatnánk az egyes csoportokat, a DisplayMain csoportot használjuk egyszerre mindegyikük mozgatására. Ez egy nagyszerű példa arra, hogy a több megjelenítő csoportot tartalmazó megjelenítő csoport egyszerre használható sok grafika kezeléséhez.
setupScreen (); timer.performWithDelay (1000, screenLayer); timer.performWithDelay (2000, moveOne); timer.performWithDelay (3000, moveTwo);
Ez a kód utolsó kódja mutatja meg, mi történik, amikor ezeket a funkciókat futtatjuk. A timer.performWithDelay funkció használatával a funkciókat másodpercenként kikapcsoljuk az alkalmazás indítása után. Ha nem ismeri ezt a funkciót, az első változó a milliszekundumban kifejezett késleltetés ideje, a második a késleltetés után futni kívánt függvény.
Amikor elindítja az alkalmazást, a image1.png tetején kell lennie image1.png. A screenLayer funkció tüzel, és a image1.png elé kerül. A moveOne funkció a image1.png-t az image1.png alatt mozogja, és a moveTwo funkció utolsó alkalommal lőni, egyszerre mozgatja a két képet.
Hogyan lehet megjavítani egy lassú iPad
Fontos megjegyezni, hogy mindegyik csoportban tucatnyi kép jelenhet meg bennük. És ahogy a moveTwo funkció mindkét képet egy sornyi kóddal mozgatta, a csoporton belüli összes kép veszi a csoporthoz tartozó parancsokat.
Technikailag a displayMain csoportban lehetnek mind a megjelenített csoportok, mind a benne lévő képek. Azonban jó gyakorlatnak számít, hogy egyes csoportok, mint például a DisplayMain, más csoportok számára konténerekként működjenek kép nélkül, hogy jobb szervezést hozzanak létre.
Ez a bemutató a megjelenítési objektumot használja. További információ a megjelenített objektumról.
Hogyan kezdjünk iPad-alkalmazások fejlesztése?