Jak na vrstvu, přesunout a přenést grafiku na přední stranu

Použití sady Corona SDK k manipulaci s grafikou

Klíčová součást tvorby, manipulace a správy grafiky v sadě Corona SDK je objekt zobrazení. Tento objekt lze nejen použít pro zobrazení obrázku ze souboru, snad stejně důležitý, umožňuje seskupovat obrázky dohromady. To vám umožní posunout celou sadu grafiky kolem obrazovky najednou a vrstvu grafiku na sebe.

Tento tutoriál vás naučí základy používání skupin zobrazení pro uspořádání grafických objektů ve vašem projektu. To bude demonstrováno vytvořením dvou různých vrstev, jedna představující normální obrazovku a druhá představující modální vrstvu, která se na ní umístí. Kromě vrstvení grafiky použijeme také přechodový objekt k přesunutí celé modální skupiny.

Jak prodávat aplikaci

Poznámka: Chcete-li sledovat tento tutoriál, budete potřebovat dva obrázky: image1.png a image2.png. Mohou to být libovolné obrázky, které si vyberete, ale výukový program bude fungovat nejlépe, pokud máte obrazy kolem 100 pixelů za 100 pixelů. To vám umožní snadno vidět, co se děje s obrázky.

Chcete-li začít, otevřete nový soubor nazvaný main.lua a začněte budovat náš kód:

displayMain = display.newGroup (); displayFirst = display.newGroup (); displaySecond = display.newGroup (); global_move_x = display.contentWidth / 5;

Tato část kódu nastavuje naši knihovnu ui a prohlašuje prostřednictvím zobrazovacích skupin: displayMain, displayFirst a displaySecond. Používáme je k tomu, abychom nejprve naformovali grafiku a poté je přesunuli. Proměnná global_move_x je nastavena na 20% šířky displeje, takže můžeme vidět pohyb.

funkce setupScreen () displayMain: vložit (displayFirst); displayMain: vložit (displaySecond); Zobrazit první: toFront (); displaySecond: toFront (); místní pozadí = display.newImage ("image1.png", 0,0); displayFirst: vložit (pozadí); místní pozadí = display.newImage ("image2.png", 0,0); displaySecond: vložení (pozadí); konec

Funkce setupScreen ukazuje, jak přidat skupiny zobrazení do hlavní skupiny zobrazení. Také používáme funkci toFront () pro nastavení různých grafických vrstev s tím, že vrstva, kterou chceme, je navržena jako celek.

V tomto příkladu není skutečně nutné přesunout displayFirst na frontu, protože bude výchozí, aby se nacházel pod skupinou displaySecond, ale je dobré se zvyknout na výslovné vrstvení každé zobrazovací skupiny. Většina projektů skončí více než dvěma vrstvami.

Do každé skupiny jsme také přidali obrázek. Když spustíme aplikaci, druhý obrázek by měl být nad prvním snímkem.

funkce screenLayer () displayFirst: toFront (); konec

Vrstvenou grafiku jsme již naskládali do skupiny DisplaySecond v horní části skupiny first display. Tato funkce se bude pohybovat zobrazením firstFirst dopředu.

funkce moveOne () displaySecond.x = displaySecond.x + global_move_x; konec

Funkce moveOne posune druhý snímek doprava o 20% šířky obrazovky. Když zavoláme tuto funkci, skupina DisplaySecond bude za skupinou displayFirst.

funkce moveTwo () displayMain.x = displayMain.x + global_move_x; konec

Funkce moveTwo přesune oba obrázky doprava o 20% šířky obrazovky. Nicméně místo toho, abychom jednotlivé skupiny posunuli jednotlivě, budeme používat skupinu displayMain, abychom je současně přesunuli. Jedná se o skvělý příklad toho, jak může být zobrazovací skupina obsahující více skupin zobrazení použita k manipulaci s mnoha grafikami najednou.

setupScreen (); timer.performWithDelay (1000, screenLayer); timer.performWithDelay (2000, moveOne); timer.performWithDelay (3000, moveTwo);

Tento poslední kód kódu ukazuje, co se stane, když spustíme tyto funkce. Funkci timer.performWithDelay použijeme k vypnutí funkcí každou sekundu po spuštění aplikace. Pokud nejste s touto funkcí obeznámeni, první proměnná je doba prodlení vyjádřená v milisekundách a druhá je funkce, kterou chceme spustit po tomto zpoždění.

Při spuštění aplikace byste měli mít image2.png na obrázku image1.png. Funkce screenLayer se vypne a přinese image1.png na přední stranu. Funkce moveOne bude přesunout image2.png z obrázku image1.png a funkce moveTwo bude spuštěna naposledy a obě snímky budou současně přesouvány.

Jak opravit pomalý iPad

Je důležité si uvědomit, že každá z těchto skupin může mít v nich desítky obrazů. A stejně jako funkce moveTwo přemístila oba obrazy jedním řádkem kódu, všechny snímky ve skupině přijmou příkazy dané skupině.

Technicky může skupina displayMain obsahovat jak zobrazovací skupiny, tak obrázky obsažené v ní. Je však dobré, aby některé skupiny jako displayMain působily jako kontejnery pro jiné skupiny bez jakýchkoliv obrázků, aby se vytvořila lepší organizace.

Tento výukový program využívá objekt zobrazení. Další informace o objektu zobrazení.

Jak začít Začínáme s vývojem aplikací iPad