Sök…


parametrar

Parameter detaljer
showsFPS Visa räkningen av den aktuella bildhastigheten i ramar per sekund i vyn.
showsNodeCount Visa ett antal av det aktuella antalet SKNodes som visas i vyn.
showsPhysics Visa en visuell representation av SKPhysicsBodys i vyn.
showsFields Visa en bild som representerar effekterna av fysikfälten i vyn.
showsDrawCount Visa ett antal räkningar som krävs för att visa vyn.
showsQuadCount Visa en räkning av antalet rektanglar som krävs för att visa vyn.

Anmärkningar

En SKView är en underklass av UIView som används för att presentera SpriteKit 2D-animationer.

En SKView kan läggas till i Interface Builder eller programmatiskt på samma sätt som "normala" UIViews. SpriteKit-innehåll presenteras sedan i SKView i en SKScene.

Se även SKView Class Reference från Apple Documentation.

Skapa en fullskärms SKView med Interface Builder

Ett typiskt fall för SpriteKit är där SKView fyller hela skärmen.

För att göra detta i Xcodes Interface Builder, skapar du först en normal ViewController, välj sedan den medföljande vyn och ändra dess klass från UIView till SKView :

ange bildbeskrivning här

Inom koden för View Controller, i metoden viewDidLoad, ta en länk till denna SKView med self.view:

I Swift:

guard let skView = self.view as? SKView else {
    // Handle error
    return
}

(Vaktuttalandet här skyddar mot det teoretiska felet att vyn inte är en SKView.)

Du kan sedan använda detta för att utföra andra operationer som att presentera en SKScene:

I Swift:

skView.presentScene(scene)

Visar felsökningsinformation

Den aktuella bildhastigheten (i FPS, ramar per sekund) och det totala antalet SKNoder i scenen (nodeCount, varje sprite är en SKNode men andra objekt i scenen är också SKNoder) kan visas i det nedre högra hörnet av vyn .

Dessa kan vara användbara när de är aktiverade (inställd på true) för felsökning och optimering av din kod, men bör vara avstängda (inställda på falskt) innan du skickar appen till AppStore.

I Swift:

skView.showsFPS = true
skView.showsNodeCount = true

Resultat:

ange bildbeskrivning här

Skapa en liten SKView med andra kontroller med Interface Builder

En SKView behöver inte fylla hela skärmen och kan dela utrymme med andra UI-kontroller. Du kan till och med visa mer än en SKView på en gång om du vill.

För att skapa en mindre SKView bland andra kontroller med Interface Builder, skapar du först en normal ViewController och drar sedan en ny vy till visningskontrollern:

Dra och släpp en ny vy

Det kan vara bra att ställa in färgen på den här vyn på något annat än vitt (här används svart) så att den kan ses tydligare i Interface Builder (den här färgen visas inte i den slutliga appen). Lägg till andra kontroller (en UIV-bild, två knappar och en etikett visas här som exempel) och använd begränsningar som vanligt för att lägga dem ut på skärmen:

Byt färg, lägg till kontroller, lägg till begränsningar

Välj sedan vyn du vill vara en SKView och ändra dess klass till SKView:

Byt klass till SKView

Använd sedan assistentredigeraren, dra-dra från denna SKView till din kod och skapa ett uttag:

Skapa ett uttag

Använd detta uttag för att presentera din SKScene.

I Swift:

skView.presentScene(scene)

Resultat (baserat på Hello World- exemplet):

ange bildbeskrivning här



Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow