定時器:可以讓某個函式不斷地去執行或者只執行一次,或者讓它每隔幾秒執行一次,cocos2d-x為我們提供了三種定時器,分別是schedule,scheduleupdate,scheduleonce.
其功能特點如下:
1、scheduleupdate
加入當前節點後,程式會每幀都會自動執行一次預設的update函式。(注:一定是update函式哦,若想呼叫其他自己命名的函式則使用schedule)
首先在helloword類的標頭檔案中宣告update函式:
void
update(
float
dt); //引數為float型別
然後在helloworld類原始檔中實現函式update:
void
helloworld::update(
float
dt)
現在我們可以呼叫了,在需要他不斷執行的地方加入呼叫的**就ok:
this
->scheduleupdate();
//this是當前節點,如layer,所以可以省略啦。
執行之後你將會看到不斷有baibai被列印出來
2、scheduleupdate
可以沒隔幾秒執行某個自定義的函式,來看**:
首先還是在helloworld中宣告所要執行的函式:
void
move(
float
dt);
然後在原始檔實現:
void
helloworld::move(
float
dt)
現在去執行他,注意引數哦
scheduleonce(schedule_selector(helloworld::move), 1.0f);
//每隔1.0f執行一次,省略引數則表示每幀都要執行
執行之後,****vs每隔1.0f才會被列印一次。
3、scheduleonce
功能:在幾秒之後執行,並且只會執行一次。
我們就執行上面所
寫的move函式吧。
this
->scheduleonce(schedule_selector(helloworld::move), 1.0f);
//在1.0f之後執行,並且只執行一次。
執行一下,****vs只是被列印了一次就完了
1、停止執行自己定義的函式定時器:
this
->unschedule(schedule_selector(helloworld::move));
2、停止預設定時器:
this
->unscheduleupdate();
3、停止所有定時器:
this
->unscheduleallselectors();
cocos2d x之三種文字
cocos2d x為我們提供了三個類來處理文字資訊 1.cclabelttf 2.cclabelbmfont 3.cclabelatlas 1.cclabelttf cclabelttf plabel cclabelttf create vs arial 30 要顯示的內容,字型,字型大小 這裡也可...
cocos2d x 關於定時器
定時器的作用就是每隔一段時間,就執行一段自定義的動作,比如飛機向前方移動,子彈的移動等等。該函式定義在ccnode標頭檔案中,基本上cocos2dx中所有的東西都能夠使用定時器。第一種 scheduleupdate 預設定時器 該定時器開啟函式與update 函式配套使用,update方法是每一幀執...
cocos2dx定時器事件
update定時器 schedule定時器 其他事件 除了定時器會不斷地提供觸發事件外,cocos2d x還為我們提供了一些其他與流程控制相關的事件 方法名稱 描述 onenter 當此節點所在場景即將呈現時,會呼叫此方法 onentertransitiondidfinish 當此節點所在場景的入場...