1
내 새 프로젝트에 TextField를 사용하고 있는데 cocos2d-x 3.2에 있습니다. 텍스트를 입력 한 다음 입력 할 때 키보드가 숨겨 지지만 텍스트를 입력하면 제대로 작동합니다. & 내 텍스트 필드가 들어있는 PopUp 레이어를 닫으면 키보드가 열렸을 때 키보드를 열어 두었습니다. 이 상황에서 키보드를 숨기거나 닫을 수있는 방법을 모르겠습니다. 이것은 나를 위해 작동내 TextField가 포함 된 레이어를 닫는 동안 키보드를 숨기는 방법
// 내 레이어에 텍스트 필드를 추가
TextFiledd = TextField::create("", "fonts/HelveticaLTStd-Cond_0.ttf" , ButtonFontSize);
TextFiledd->setContentSize(Size(Playername_bg->getContentSize().width ,Playername_bg->getContentSize().height));
TextFiledd->setPosition(Point(Playername_bg->getPositionX(),Playername_bg->getPositionY()));
TextFiledd->setAnchorPoint(Vec2::ANCHOR_MIDDLE);
TextFiledd->setMaxLength(10);
TextFiledd->setMaxLengthEnabled(true);
TextFiledd->addEventListener(CC_CALLBACK_2(PlayerName::textFieldEvent, this));
TextFiledd->setColor(Color3B::YELLOW);
TextFiledd->setBright(true);
TextFiledd->setTouchAreaEnabled(true);
TextFiledd->setTouchSize(Playername_bg->getContentSize());
bgFrameSprite->addChild(TextFiledd,PopUpTag);
// 위임 방법
void PlayerName::textFieldEvent(cocos2d::Ref *pSender, TextField::EventType type)
{
playerNameText = (TextField*)pSender;
CCLOG(" Player name : %s",playerNameText->getStringValue().c_str());
std::string key = Player_Name;
PlayerSettings::setPlayerName(key.c_str(), playerNameText->getStringValue().c_str());
switch (type)
{
case TextField::EventType::ATTACH_WITH_IME:
{
TextField* textField = dynamic_cast<TextField*>(pSender);
Size widgetSize = WinSize;
runAction(CCMoveTo::create(0.225f,Vec2(0, widgetSize.height/12.0f)));
textField->setTextHorizontalAlignment(TextHAlignment::LEFT);
textField->setTextVerticalAlignment(TextVAlignment::TOP);
playerNameText->setText(str);
}
break;
case TextField::EventType::DETACH_WITH_IME:
{
TextField* textField = dynamic_cast<TextField*>(pSender);
Size widgetSize = WinSize;
runAction(CCMoveTo::create(0.175f, Vec2(0, 0)));
textField->setTextHorizontalAlignment(TextHAlignment::LEFT);
textField->setTextVerticalAlignment(TextVAlignment:
}
break;
case TextField::EventType::INSERT_TEXT:
break;
case TextField::EventType::DELETE_BACKWARD:
break;
default:
break;
}
}
내 키보드가 같이 열려 남아 : 화면을 클릭하면 http://discuss.cocos2d-x.org/uploads/default/3141/110521140718_64ac4a858885861d7fce67eeb3c7056c.jpg도 내가, IOS 플랫폼에서 내 장면 –
교체, 키보드 것이다 자동으로 사라집니다. – zilongshanren