Hoe te legen, te ferpleatsen en bringe grafiken nei foaren

It brûken fan it Corona SDK om grafiken te meitsjen

De kaaibestân fan it meitsjen, manipulearjen en behearen fan grafiken yn 'e Corona SDK is it werjaanobjekt. Net allinnich kin dit objekt brûkt wurde om inôfbylding út in triem te sjen, faaks ek as wichtich, it makket it mooglik om jo ôfbyldings te kombinearjen. Dit liedt jo in folsleine set fan grafiken om it skerm op ien kear ljeppe en lizze grafyk op boppekant fan elkoar.

Dit ûnderwerp sil jo de basis fan lokaasjegruppen brûke om de grafyske objekten yn jo projekt te organisearjen. Dit sil demoare wurde troch twa ferskillende lagen te meitsjen, ien dy't de gewoane skerm fertsjintwurdiget en in oare fertsjintwurdiget in modale lagen om har boppe op te plakken. Neist it lagen fan 'e grafiken brûke wy ek it transysjeobjekt om de folsleine modale groep te ferpleatsen.

Hoe kin jo App oanmeitsje?

Taljochting: Om jo tegearre mei dizze ynstruksje te folgjen, sille jo twa ôfbyldings nedich hawwe: image1.png en image2.png. Dit kin elke ôfbylding wêze dy't jo kieze, mar it tutorial sil it bêste wurk dwaan as jo ôfbyldings om 100 piksels hawwe mei 100 pixels. Dit sil jo makliker sjen wat der mei de ôfbyldings is.

Om te begjinnen, sille wy in nije bestân iepenje, hjitte main.lua en begjin ús bouwurken te begjinnen:

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

Dizze ôfdieling fan koade opset ús ui biblioteek en ferklearret fia werjeftegruppen: displayMain, displayFirst en displaySecond. Wy sille dizze brûke om ús grafyk earst te lizzen en dêrnei te bewegen. De fariabele global_move_x wurdt op 20% ynsteld fan de werjefte's breed, sadat wy de beweging sjen kinne.

function setupScreen () displayMain: ynfoegje (displayFirst); displayMain: ynfoegje (displaySecond); displayFirst: toFront (); displaySecond: toFront (); lokale eftergrûn = display.newImage ("image1.png", 0,0); displayFirst: ynfoegje (eftergrûn); lokale eftergrûn = display.newImage ("image2.png", 0,0); displaySecond: ynfoegje (eftergrûn); ein

De opsetScreen-funksje jout oan hoe't jo werjaangruppen taheakke oan 'e haadbehearder. Wy brûke ek de funFront () -funksje om de ferskillende grafyske lagen te setten, mei it ljocht dat wy allegear boppe alles fan 'e tiid definiearje wolle.

Yn dit foarbyld is it net echt nedich om it displayFirst nei de foarkant te bewegen, omdat it standert is om ûnder de displaySecond-groep te wêzen, mar it is goed om yn 'e gewoante te meitsjen fan elke displaygroup úteinlik te lizzen. De measte projekten komme mei mear as twa lagen.

Wy hawwe ek in byld oan elke groep tafoege. As wy de app begjinne, dan moat it twadde ôfbylding boppen wêze fan 'e earste ôfbylding.

function screenLayer () displayFirst: toFront (); ein

Wy hawwe ús grafyk al mei de displaySecond-groep op 'e top fan' e displayFirst-groep lizze. Dizze funksje sjogge displayFirst nei de foarkar.

function moveOne () displaySecond.x = displaySecond.x + global_move_x; ein

De funksjeOne funksje sil de twadde ôfbylding nei rjochts ferpleatse troch 20% fan de skermbreedte. As wy dizze funksje neame, is de displaySecond-groep efter de displayFirst-groep.

function moveTwo () displayMain.x = displayMain.x + global_move_x; ein

De funTwo funksje sil beide bylden rjochts ferpleatse troch 20% fan de skermbreedte. As ynstee fan elke groep yndividuel wurde, brûke wy de displayMain-groep har beide tagelyk te bewegen. Dit is in grut foarbyld fan hoe't in werjaan-groep dy't meardere werjaan-groepen befettet kin brûkt wurde om mannich grafiken ien kear te meitsjen.

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

Dizze lêste bit fan koade docht wat foar is, as wy dizze funksjes útfiere. Wy brûke de timer.performWithDelay-funksje om de funksjes elke sesje nei de app te starten. As jo ​​net mei dizze funksje binne, is de earste fariant de tiid om te ekspresearjen yn millisekonden en de twadde is de funksje dy't wy nei dy ferfarring útfiere wolle.

As jo ​​de app starte, moatte jo image2.png hawwe op boppe image1.png. De screenLayer-funksje sil fjoer en image1.png nei de foarkant bringe. De funksjeOne funksje sil image2.png ferpleatse út ûnder image1.png, en de moveTwo funksje sil lêst lêze, beide beide bylden tagelyk ferpleatse.

How to Fix a Slow iPad

It is wichtich om te betinken dat elk fan dy groepen tsientallen foto's yn har hawwe kin. En krekt as de bewegingTwo funksje ferpleatst beide ôfbyldings mei ien line fan koade, sille alle ôfbyldings yn in groep de kommando 's opnimme foar de groep.

Tekentich koe de displayMain groep sawol sjen as groepen en ôfbyldings dy't binnen it binne. It is lykwols in goeie praktyk om guon groepen as displayMain te dwaan as konteners foar oare groepen sûnder elke ôfbyldingen om bettere organisaasje te kreëarjen.

Dit tutorial makket gebrûk fan it display-objekt. Mear witte oer it display-objekt.

Hoe kinne jo iPad apps ûntwikkelje?