// 创建文本框
auto textField = TextField::create("请输入数据", "Arial", 48);
textField->setPosition(Vec2(visibleSize.width/2, visibleSize.height/2+50));
// 添加文本框事件监听器
textField->addEventListener([=](Ref *pSender, TextField::EventType type){
// 根据文本框的事件类型执行相应的代码
switch (type)
{
case TextField::EventType::ATTACH_WITH_IME:
_displayValueLabel->setString("输入开始");
break;
case TextField::EventType::DETACH_WITH_IME:
{
_displayValueLabel->setString("输入完成");
// 获得文本框输入的数据
std::string value = textField->getStringValue();
// 如果数据大于0,显示在_messageValueLabel当中
if (value.length() > 0)
{
_messageValueLabel->setString("你输入的数据:" + value);
}
else
{
_messageValueLabel->setString("你没有输入数据");
}
}
break;
case TextField::EventType::INSERT_TEXT:
_displayValueLabel->setString("插入数据");
break;
case TextField::EventType::DELETE_BACKWARD:
_displayValueLabel->setString("删除数据");
break;
default:
break;
}
});
this->addChild(textField);