赞
踩
新公司用的是cocosBuilder,导出的可用文件是.ccbi文件,之前没接触过,到处都是问题。就慢慢记下所遇到的问题吧(话说都9102年了,为什么还要用cocosBuilder…)
问题描述:
在cocosBuilder中创建了个Label组件,在lua中获取到后想要修改文本内容,运行时报错
代码如下:
self.m_ccbNode:openCCBFile("ccb/choiceBuilding.ccbi")
local _label = self.m_ccbNode:nodeForName("choiceBuilding_label_4")
_label:setString("11")
报错如下:
[LUA-print] LUA ERROR: [string "ui/Building/choiceBuilding/view.lua"]:37: attempt to call method 'setString' (a nil value)
找了一番百度后问题解决,需要把获取到的label节点转换下,加句代码
self.m_ccbNode:openCCBFile("ccb/choiceBuilding.ccbi")
local _label = self.m_ccbNode:nodeForName("choiceBuilding_label_4")
tolua.cast(_label,"Label") -- 将节点转换为Label
_label:setString("11")
问题解决!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。