当前位置:   article > 正文

小记:lua label使用setString() 报错的问题_setstring报错

setstring报错

新公司用的是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")
  • 1
  • 2
  • 3

报错如下:

	[LUA-print] LUA ERROR: [string "ui/Building/choiceBuilding/view.lua"]:37: attempt to 	call method 'setString' (a nil value)
  • 1

找了一番百度后问题解决,需要把获取到的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")
  • 1
  • 2
  • 3
  • 4

问题解决!

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Cpp五条/article/detail/141658
推荐阅读
相关标签
  

闽ICP备14008679号