日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

iOS -- SKScene类

發布時間:2023/12/10 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 iOS -- SKScene类 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

SKScene類

繼承自SKEffectNode:SKNode:UIResponder:NSObject
符合NSCoding(SKNode)
NSCopying(SKNode)
NSObject(NSObject)
框架?/System/Library/Frameworks/SpriteKit.framework
可用性可用于iOS 7.0或者更晚的版本
聲明于SKScene.h
參考指南Sprite Kit Progamming Guide

?

概覽

?

重要提示:這是一個初步的API或者開發技術文檔。雖然已經審閱了本文檔的技術準確性,但是它不是最終的版本。本機密信息僅適用于蘋果開發者計劃的注冊會員。蘋果提供這些機密信息來幫助你采用這些技術和編程接口。此信息如果有變更,根據本文檔實現的軟件應使用操作系統軟件和最終文檔測試。新版本的文檔可能會擁有新的API或者技術。

?

一個SKScene實例表示一個游戲中的場景。一個場景節點通常是節點樹中的根節點。節點樹中的其他節點負責提供游戲內容,場景節點則負責渲染和顯示。要顯示一個場景,你需要先將它present到一個SKView實例中。

一個場景通過以下的處理來計算內容

1.場景調用update:方法。

2.場景執行其子節點的動作。

3.場景調用didEvaluateActions方法。

4.場景執行加入到場景中的物理體的物理模擬。

5.場景調用didSimulatePhysics方法。

子類節點

有時會創建場景類的子類。在子類場景中,要創景子類場景的內容以及執行邏輯。

方法

初始化一個場景

?

+ sceneWithSize:

?

創建并返回一個新的場景實例。

+ (SKScene *)sceneWithSize:(CGSize)size

?

參數size:場景的大小
返回值一個新的場景實例

?

論述

這個類方法創建一個新的場景并調用它的initWithSize:方法初始化這個場景。

?

?

- initWithSize

?

初始化一個新的場景實例。

- (id)initWithSize:(CGSize)size

?

參數size:場景的大小
返回值一個新的初始化好的場景實例

?

論述

這是類方法指定的初始化方法。

轉變視圖和場景的坐標系

?

?

- convertPointFromView:

?

將視圖坐標系轉成場景坐標系。

- (CGPoint)converPointFromView:(CGPoint)point

?

參數point:視圖坐標系中的一個點
返回值這個點在場景坐標系中的位置

?

論述

在調用該方法之前,場景必須已經被加到視圖中了。

?

?

- convertPointTOView:

?

將場景坐標系轉成視圖坐標系。

- (CGPoint)converPointToView:(CGPoint)point

?

參數point:場景坐標系中的一個點
返回值這個點在視圖坐標系中的位置

?

論述

在調用該方法之前,場景必須已經被加到視圖中了。

改變場景的大小

?

?

- didChangeSize:

?

當場景大小發生改變時調用該方法。

- (void)didChangeSize:(CGSize)oldSize

?

參數oldSize:場景的原大小
返回值?

?

論述

這個方法通常會被子類重寫。

檢測場景的彈出改變。

?

?

- willMoveFromView:

?

該方法會在場景移出視圖之前調用。

- (void)willMoveFromView:(SKView *)view

?

參數view:持有該場景的視圖
返回值?

?

論述

這個方法通常會被子類重寫。

?

?

- didMoveToView:

?

該方法會在場景彈到視圖上之后調用。

- (void)didMoveToView:(SKView *)view

?

參數view:持有該場景的視圖
返回值?

?

論述

這個方法通常會被子類重寫。

執行動畫循環

?

?

- update:

?

在場景中動作執行之前需要執行的更新。

- (void)update:(NSTimeInterval)currentTime

?

參數currentTime:已經過去的時間,保證單調遞增
返回值?

?

論述

不要直接調用這個方法,當場景加入到視圖中,并且不是暫停狀態時,它每一幀會被調用一次。你的場景子類應該重寫這個方法,并執行一些需要的更新。

?

- didEvaluateActions

?

在場景中動作執行之后需要執行的更新。

- (void)didEvaluateActions

論述

不要直接調用這個方法,當場景加入到視圖中,并且不是暫停狀態時,它每一幀會被調用一次。你的場景子類應該重寫這個方法,并執行一些需要的更新。

?

- didSimulatePhysics

?

在物理模擬執行之后需要執行的更新。

- (void)didSimulatePhysics

論述

不要直接調用這個方法,當場景加入到視圖中,并且不是暫停狀態時,它每一幀會被調用一次。你的場景子類應該重寫這個方法,并執行一些需要的更新。

屬性

查看視圖相關屬性

?

anchorPoint

?

場景原點在視圖中的位置。

@property (atomic) CGPoint?anchorPoint

論述

指定場景的坐標位置。默認值為(0,0),表示場景在視圖矩形的左下角。

?

?

scaleMode

?

定義場景如何映射到視圖。

@property (atomic) SKSceneScaleMode?scaleMode

論述

場景的大小和彈它出來的視圖大小不相同是有可能的。該屬性定義了場景如何映射到視圖。詳細值參見Scene Scaling Modes部分。默認值為SKSceneScaleModeFill。

?

?

view

?

場景所在的視圖。只讀。

@property (atomic, weak, readonly) SKView *view

論述

要彈出場景,需要調用SKView類的presentScene:方法或者presentScene:transition:方法。

設置場景的背景色

?

backgroundColor

?

場景的背景色。

@property (atomic, retain) SKColor *backgroundColor

論述

默認值為一個灰色的顏色值(RGBA0.15,0.15,0.15,1.0)。

改變場景的大小

?

?

size

?

場景的大小。

@property (atomic) CGSize *size

場景中運行的物理世界

?

?

physicsWorld

?

場景中的物理世界。

@property (atomic, readonly) SKPhysicsWorld *physicsWorld

論述

所有的場景自動模擬添加物理體的節點的物理特性。通過這個屬性可以獲取場景的全局物理屬性,比如重力加速度。

常量

決定場景的彈出模式

typedef NS_ENUM(NSInteger,

SKSceneScaleMode){

SKSceneScaleModeFill,

SKSceneScaleModeAspectFill,

SKSceneScaleModeAspectFit,

SKSceneScaleModeResizeFill

}

?

?

SKSceneScaleModeFill場景的每個軸獨立縮放,場景完全映射到視圖中
SKSceneScaleModeAspectFill場景中每個軸使用相同的縮放因子,保證視圖被完全填充,場景可能被剪裁
SKSceneScaleModeAspectFit場景中每個軸使用相同的縮放因子,保證整個場景可見
SKSceneScaleModeResizeFill場景不縮放,場景自動調整大小以適應視圖

總結

以上是生活随笔為你收集整理的iOS -- SKScene类的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。