Label TypeCasting

I’m trying to typcast a label and then manipulate it’s text using setString.

Label* currentScore = static_cast<cocos2d::ui::Text *>(Director::getInstance()->getRunningScene()->getChildByName("currentScoreLabel"));

jni/…/…/Classes/GameScene.cpp: In member function ‘virtual void GameScene::upd
ate(float)’:
jni/…/…/Classes/GameScene.cpp:597:36: error: expected type-specifier
Label* currentScore = static_cast<cocos2d::ui::Text >(Director::getInstance()
->getRunningScene()->getChildByName(“currentScoreLabel”));
^
jni/…/…/Classes/GameScene.cpp:597:36: error: expected ‘>’
jni/…/…/Classes/GameScene.cpp:597:36: error: expected ‘(’
jni/…/…/Classes/GameScene.cpp:597:36: error: ‘Text’ is not a member of ‘cocos2
d::ui’
jni/…/…/Classes/GameScene.cpp:597:55: error: expected primary-expression befor
e ‘>’ token
Label
currentScore = static_cast<cocos2d::ui::Text >(Director::getInstance()
->getRunningScene()->getChildByName(“currentScoreLabel”));
^
jni/…/…/Classes/GameScene.cpp:597:137: error: expected ‘)’ before ‘;’ token
Label
currentScore = static_cast<cocos2d::ui::Text *>(Director::getInstance()
->getRunningScene()->getChildByName(“currentScoreLabel”));

                                                     ^

What is not right about the code?

https://github.com/cocos2d/cocos2d-x/issues/10333 despite the solution here, still not able to get it work.

You can’t cast from ui::Text to Label. To manipulate the content you can just call similar methods to label, such as setString();

auto scene = Director::getInstance()->getRunningScene()
auto lbl = static_castcocos2d::ui::Text*(scene->getChildByName(“currentScoreLabel”));
lbl->setString(“new title”);