91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

cc.Node.事件

發布時間:2020-04-05 08:19:03 來源:網絡 閱讀:4285 作者:超級極客 欄目:游戲開發

觸摸事件

1.觸摸事件的類型:START觸摸啟動,MOVED移動,ENDED彈起來,CANCEL取消;

ENDED和CANCEL區別是ENDED物體內彈起來,CANCEL是在物體外范圍彈起。


2.監聽觸摸事件,node.on(類型,callback,target(回調函數的this),[useCapture])



3.觸摸事件,node.on(類型,callback,target(回調函數的this),[useCapture])


      //(1)監聽觸摸事件 向引擎底層注冊回調函數
    	//當有觸摸事件發生等時候,調這個方法
    	//cc.Node.EventType.TOUCH_START 觸摸開始
    	

    	//(2)回調函數等格式 function(t) t對象是tt.Touch的對象
    	//這個對象包含的信息有[觸摸信息,事件信息];
    	
    	//(3)target 目標誰來調等callback 哪個對象來調用等這個callback
    	//那就是哪個對象在callback來綁定實例,target就是里面this對象
    
    	//最后一個參數默認即可
     onLoad: function() {
        this.node.on(cc.Node.EventType.TOUCH_START,
            function(t){console.log("cc.Node.EventType.TOUCH_START ")},this)
        this.node.on(cc.Node.EventType.TOUCH_MOVE,
            function(t){console.log("cc.Node.EventType.TOUCH_MOVE ")},this)
            
        this.node.on(cc.Node.EventType.TOUCH_END,
            function(t){console.log("cc.Node.EventType.TOUCH_END ")},this)
            
        this.node.on(cc.Node.EventType.TOUCH_CANCEL,
            function(t){console.log("cc.Node.EventType.TOUCH_CANCEL ")},this)
     },



4.如果這時候 不想監聽了 就可以通過off來關閉, 但是你的,

callback不要是匿名函數,要用一個函數對象來保存

    on_touch_moved:function(t){
        console.log("cc.Node.EventType.TOUCH_END ");
    },



5.關閉注冊

    this.node.off(cc.Node.EventType.TOUCH_END,
        this.on_touch_moved ,this)




6.移除目標上的所有事件

targetoff(target)




7.cc.Touch

getLocation 獲取當前觸點位置 做下角(0,0)為起始點

getDelta 獲取觸點距離上一次事件移動的距離對象,對象包含 x 和 y 屬性




8.cc.Touch 同時包含 cc.Event事件

父節點移動那么所有的子節點都移動,那也就是("父節點是包含了

整個子節點的一個整體"),那這個整體其中一個成員收到來一個事件,

這時候這事件會向上傳遞,就是說你的一個子節點有一個事件發生后, 

父節點是可以收到等,這個就叫做事件等向上傳遞,事件冒泡。


如果子節點覺得這是一個私有事件,不想向上傳遞,想擋住這個事件,

stopPropagationImmediate//立即停止事件傳遞

stopPropagation停止傳遞當前事件。




9.按鍵事件

按鍵分類:按下EventType.KEY_DOWN,彈起KEY_UP

注冊鍵盤事件

注意systemEvent是小寫開頭,

大寫是類, 

小寫是全局實例 他的說明是:系統事件單例,方便全局使用.

     onLoad: function() {
        //按鍵被按下
        cc.systemEvent.on(cc.SystemEvent.EventType.KEY_DOWN,
            this.on_key_down,this);
        cc.systemEvent.on(cc.SystemEvent.EventType.KEY_UP,
            this.on_key_up,this);
     },
    on_key_down: function(event){
        //獲取按鍵 每個按鍵對應一個按鍵碼
        //event對象帶有keyCode 按鍵碼
        //按鍵碼在cc.KEY里面定義的
        console.log("按下");
        switch(event.KeyCode){
            case cc.KEY.space:
                console.log("空格按下");
            break;
        }
    },
    on_key_up: function(event){
         switch(event.KeyCode){
            case cc.KEY.space:
                console.log("空格彈起");
            break;
        }
    },




10.自定義事件

自己定義的事件,比如我要向你發送一個通知.

監聽:this.node.on("自定義事件名",function,target,useCapture);

觸發(派發事件):emit("事件名",[detail]) 只有自己能收到

冒泡派送:dispatchEvent(new cc.Event.EventCustom("name",是否冒泡傳遞))

onLoad:function(){
        //接收者 
        //事件類型是自定義字符串等 為事件名字
        //回調函數 參數Event.EventCustom的實例
        this.node.on("pkg_event",function(e){
            console.log("pkg_event");
            //輸出自定義事件傳過來等 自定義數據
            console.log(e.detail.name);
        },this);
        //end
        
        //發送者  直接觸發事件
        //這種方法不會對事件傳播到任何其他對象
        //也就是說這個事件只能傳給自己
        //detail Object 事件的詳細數據
        //可以傳遞自定義數據 比如說傳一個表
        this.node.emit("pkg_event",{name:"下面"});
        //end

    },

如果我們要把這個事件向上發送

        //如果這個事件要向上傳遞,也就是不只是傳給自己
        ////true向上傳遞 false不向上傳遞
        var ea = new cc.Event.EventCustom("pkg_event",true);
        //自定義數據
        ea.detail = {name:"小王"};
        //指定這個事件向上傳遞 
        this.node.dispatchEvent(ea);
        
        //end

父節點接收事件 腳本

     onLoad :function() {
        this.node.on("pkg_event",function(e){
            console.log("父節點收到冒泡");
            console.log(e.detail.name);
        },this);
     },









向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

古蔺县| 襄城县| 胶南市| 长兴县| 彩票| 曲阜市| 广河县| 米易县| 建平县| 兴宁市| 灌云县| 高碑店市| 正镶白旗| 曲靖市| 米林县| 高平市| 邛崃市| 舟曲县| 南皮县| 赤壁市| 达州市| 新疆| 广德县| 大悟县| 仙游县| 澄迈县| 大竹县| 衡阳市| 洪泽县| 常山县| 加查县| 厦门市| 白沙| 宜州市| 梨树县| 高平市| 思茅市| 翁牛特旗| 石阡县| 桂阳县| 屯门区|