在CocosBuilder中,有一個Code Connections部分。在第二行,它有三個選項:不分配,文檔根var和所有者var。CocosBuilder中'Doc root var'和'Owner var'有什麼區別
有時候,我當我選擇者變種一個錯誤,但之後,我把它改爲文檔根變種它工作正常。
我谷歌很多,但無法找到滿意的答案。
有沒有人可以解釋清楚的區別?
在CocosBuilder中,有一個Code Connections部分。在第二行,它有三個選項:不分配,文檔根var和所有者var。CocosBuilder中'Doc root var'和'Owner var'有什麼區別
有時候,我當我選擇者變種一個錯誤,但之後,我把它改爲文檔根變種它工作正常。
我谷歌很多,但無法找到滿意的答案。
有沒有人可以解釋清楚的區別?
不分配只是表示您沒有使用代碼連接。
Doc root var表示您正在連接一個自定義cocos2d類。這會將文檔中的對象(CCB階段/文件)粘合/連接到您的代碼。此選項很方便,但您必須確保提供了根節點的控制器對象。
有時您需要能夠訪問成員變量並將 回調到除ccb文件的根節點之外的另一個對象。要做 ,您需要將所有者傳遞給CCBReader。
如Connecting with cocos2d-x中所述。
業主var通過允許您連接到除根節點以外的變量,爲您提供more flexibility。你可以將它粘貼到你選擇的任何變量上。
您得到的錯誤很可能是由於提供了一個不可用的名稱(該變量不存在)而導致的。請注意,將屬性設置爲Doc root var或Owner var並將該字段留空將導致此錯誤。
當linking member variables文檔根var將在根節點的控制器對象中添加一個成員。假設你的JS控制器是MainScene,你可以通過MainScene.myVar
來訪問它。這是由你的場景根層JS控制器屬性定義的。
或者,您可以使用不通過JS Controller連接直接綁定到場景的自定義對象來做同樣的事情。要達到此目的,您將使用Owner var屬性。
不分配是默認設置,不會執行任何操作。
實質上,這些功能允許您從代碼中輕鬆引用這些CCB對象。
試用CocosBuilder JS Example Games可能會有所幫助。如果您還沒有閱讀,關於how to connect with cocos2d-x的文檔可能對您也有用。
我更改屬性後可以確定,我保持不變。但是,謝謝你們。 – pktangyue 2013-03-07 02:10:52