《Unity_API解析》 第一章 Application類


Application類不含實例屬性和實例方法,在腳本中通過直接調用Application類的靜態屬性和靜態方法來控制程序的運行時數據.

 
Application靜態屬性:
dataPath屬性 : 數據文件路徑 
public static string dataPath{ get; } 
Application.dataPath 返回程序的數據文件所在文件夾的路徑(只讀).返回路徑為相對路徑,不同游戲平台的數據文件保存路徑不同.
Application.persistentDataPath 返回一個持久化數據存儲目錄的路徑(只讀),可以在此路徑下存儲一些持久化的數據文件.同一平台,不同程序中調用此屬性,返回值相同.
Application.streamingAassetsPath 此屬性用於返回流數據的緩存目錄,返回路徑為相對路徑,適合設置一些外部數據文件的路徑.
Application.temporaryCachePath 此屬性用於返回一個臨時數據的緩存目錄(只讀).對於同一平台,不同程序調用此屬性,返回值相同.
 
loadedLevel屬性 : 關卡索引
public static int loadedLevel{ get; }
Application.loadedLevel 返回當前場景的索引值
Application.loadedLevelName 返回當前場景的名字
Application.isLoadingLevel 是否有場景被加載
Application.LevelCount 游戲中可被加載的場景數量
Application.platform 當前游戲的運行平台,返回值為枚舉類型
Application.isPlaying 當前游戲是否正在運行
Application.isEditor 游戲是否處於Unity編輯模式
 
Application類靜態方法:
CaptureScreenshot方法 : 截屏
public static void CaptureScreenshot(string filename);
public static void CaptureScreenshot(string filename, int superSize);
參數filename 截屏文件名稱 superSize放大系數,默認為0,即不放大
此方法截取當前游戲畫面並保存為PNG格式,文件默認保存在根目錄下,若有重名文件則替換.
 
LoadLevelAdditiveAsync方法 : 異步加載關卡
public static AsynvOperation LoadLevelAdditiveAsync(int index);//參數關卡索引值
public static AsynvOperation LoadLevelAdditiveAsync(string levelName);//參數關卡名稱
此方法用於按照關卡名字在后台異步加載關卡到當前場景中,此方法只是將新關卡加載到當前場景,當前場景的原有內容不會被銷毀.
AsynvOperation colve = public static AsynvOperation LoadLevelAdditiveAsync(int index);
colve.isDone 是否加載完成
colve.progress 加載進度
 
RegisterLogCallback方法 :注冊委托
public static void RegisterLogCallback(Application.LogCallback handler);參數是委托的名字
此方法用於注冊一個委托來調用日志信息
 
前面的都比較簡單 仔細的研究了一下注冊委托
 
先上兩個測試腳本代碼
ColveTast腳本中的Callback方法 三個參數類型不能改變。要滿足Application.LogCallback的參數
 
兩個腳本掛在了一個物體下。第一個What是Colve_Tast1腳本中Start中輸出的。
而第二個該輸出空的colveStr 輸出的值變成了上一個輸出的值。
第三個colveInt 點擊可以在左下角看到colveStr的位置
第四個自然就是輸出類型了。
 
為了測試colveStr輸出的值是不是上一個log輸出的值 修改第二個腳本如下
 
可以看到colveStr的值變成了新的Log 可以確定輸出的就是上一個Log輸出的值
 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM