音效工具類的封裝

2021-07-27 15:42:40 字數 1123 閱讀 9729

與單例類的比較

類方法的特點

#import 

@inte***ce

sppsoundplaymanager : nsobject

/** @param name 聲音檔名(帶字尾)

@param alert 是否振動

*/+ (void)playsoundwithname:(nsstring *)name alert:(bool)alert;

//清除快取

+ (void)clearmemory;

@end

#import

"sppsoundplaymanager.h"

#import

//音效快取字典(key: 檔名name, value: soundid)

static nsmutabledictionary *cachedict;

@inte***ce sppsoundplaymanager()

//靜態方法中是無法訪問屬性的,改用c的靜態變數

//@property(nonatomic, strong) nsmutabledictionary *cachedict;

@end

@implementation sppsoundplaymanager

//第一次載入當前類(類被載入到記憶體中)的時候會先執行load方法(1. 只會執行一次 2. 一旦你建立了這乙個檔案就會在編譯時呼叫,與你是否使用它無關)

+ (void)load

//第一次使用當前類的時候會執行(1. 只會執行一次 2. 你使用了這個類就會執行,不使用則不執行)

+ (void)initialize

/**@param name 音效的檔名(帶字尾)

@param alert 是否振動

*/+ (void)playsoundwithname:(nsstring *)name alert:(bool)alert

if (alert) else

}+ (void)clearmemory ];

//3. 移除字典所有元素

[cachedict removeallobjects];

}@end

Unity 遊戲音效模組的封裝

audiosoure中有很多的變數 如果場景中有很多的audiosoure將會非常消耗資源,我們可以仿照物件池的原理,把聲音進行類似的操作。首先建立3個指令碼 audiomanager,clipmanager,souremanager clipmanager 用來管理clip片段 audiomana...

spUtil工具類的封裝

工具類的作用是為了讓我們更方便的使用,一次封裝,多次使用,也是乙個合格的工程師必備的 技術,下面就是sp存值和取值的工具類封裝public class sputil else if value instanceof boolean else if value instanceof float els...

分頁工具類的封裝

public class pageabletools 獲取基礎分頁物件,每頁條數預設15條 預設以id降序排序 param page 獲取第幾頁 return public static pageable basicpage integer page 獲取基礎分頁物件,每頁條數預設15條 param...