cocos2d-x 2.2.3 之菜单分析(1)

时间:2022-06-25 12:12:21
TextEdit-Menu
CCtextFieldTTF cocos2d – x 中提供的 bool T04ZORDER::init()
{
if (!CCLayer::init())
{
return false;
}
CCSize winSize = CCDirector::sharedDirector()->getWinSize();
CCTextFieldTTF * textField;
textField = CCTextFieldTTF::textFieldWithPlaceHolder("Please input your name :", "Arail", 36);
textField->setSecureTextEntry(true);//输入password的时候
CCScale9Sprite *bg = CCScale9Sprite::create();
textField->addChild(bg);//把bg加入到textField里面
bg->setAnchorPoint(ccp(0, 0));
bg->setPosition(ccp(0, 0));
bg->setContentSize(textField->boundingBox().sizes);//设置大小和textField大小一样
bg->setZOrder(-1);// 使bg线绚烂
return true;
}
/*
void dispatchKeyboardWillShow(CCIMEKeyboardNotificationInfo& info);//软键盘还没有出来的时候
void dispatchKeyboardDidShow(CCIMEKeyboardNotificationInfo& info);//软键盘已经出来了
void dispatchKeyboardWillHide(CCIMEKeyboardNotificationInfo& info);//软键盘即将要隐藏
void dispatchKeyboardDidHide(CCIMEKeyboardNotificationInfo& info);//软键盘已经隐藏
*/ CCEditBox
CCEditBox sextennsions 中提供的
CCScale9Sprite *bg = CCScale9Sprite::create("a.png");
CCEditBox *EditBox = CCEditBox::create(CCSize(300, 100), bg);//创建输入框。须要參数:巨型,9宫格背景
addChild(EditBox);
EditBox->setPosition(ccp(winSize.width / 2, winSize.height / 2));
//设置编辑框内的文字 // box->setText(“xcc”); //设置位置 EditBox->setPosition(ccp(200, 200)); //获取编辑框内的文字 //CCLOG(“Text:%s”,box->getText()); //box->setDelegate(this); //设置文本的颜色 EditBox->setFontColor(ccc3(255, 0, 0)); //当编辑框中没有不论什么字符的提示 EditBox->setPlaceHolder("please insert ur username:"); //最大输入文本长度 EditBox->setMaxLength(15); EditBox->setInputMode(kEditBoxInputModeAny); //设置输入键盘模式 // kEditBoxInputModeAny: 开启不论什么文本的输入键盘,包含换行 // kEditBoxInputModeEmailAddr: 开启 邮件地址 输入类型键盘 // kEditBoxInputModeNumeric: 开启 数字符号 输入类型键盘 // kEditBoxInputModePhoneNumber: 开启 电话号码 输入类型键盘 // kEditBoxInputModeUrl: 开启 URL 输入类型键盘 // kEditBoxInputModeDecimal: 开启 数字 输入类型键盘,同意小数点 // kEditBoxInputModeSingleLine: 开启不论什么文本的输入键盘,不包含换行 EditBox->setReturnType(kKeyboardReturnTypeDone); // kKeyboardReturnTypeDefault: 默认使用键盘return 类型 // kKeyboardReturnTypeDone: 默认使用键盘return类型为“Done”字样 // kKeyboardReturnTypeSend: 默认使用键盘return类型为“Send”字样 // kKeyboardReturnTypeSearch: 默认使用键盘return类型为“Search”字样 // kKeyboardReturnTypeGo: 默认使用键盘return类型为“Go”字样 //设置该属性输入password时为替代符 //box->setInputFlag(kEditBoxInputFlagPassword); this->addChild(EditBox, 5); CCMenuItemFont
CCMenu *menu = CCMenu::create();
addChild(menu);
//默认位置在中间
CCMenuItemFont *item = CCMenuItemFont::create("www");
menu->addChild(item);
item->setTarget(this, menu_selector(T04ZORDER::aa));//设置响应函数 item->setPosition(ccp(100,200));//设置坐标
item->setTag(1);//设置标签 CCMenuItem
CCMenu *menu = CCMenu::create();
addChild(menu);
//默认位置在中间
CCMenuItemFont *item = CCMenuItemFont::create("www");
menu->addChild(item);
item->setTarget(this, menu_selector(T04ZORDER::aa));//设置响应函数 item->setPosition(ccp(100,200));//设置坐标
item->setTag(1);//设置标签 CCMenuItemFont *item1= CCMenuItemFont::create("www");
CCMenuItemAtlasFont *item2 = CCMenuItemAtlasFont::create("123456", "abc.png", "24", "32", '0');
// 创建一个CCLabelAtlas标签(Atlas通常是指图片集合)。參数:内容(图片资源中存在。假设不存在。不显示)。图片,宽,高 CCMenuItemImage* item2 = CCMenuItemImage::create("SendScoreButton.png", "SendScoreButtonPressed.png", this, menu_selector(MenuTestLayer::menuCallback2));
// 创建一个CCMenuItem标签 第一个參数的显示的图片,第二个參数是被点击的图片,第三个參数是被点击和调用menuCallback2函数 CCLabelAtlas* labelAtlas = CCLabelAtlas::create("0123456789", "fonts/labelatlas.png", 16, 24, '.');
// 创建一个CCLabelAtlas标签(Atlas通常是指图片集合)。參数:内容(图片资源中存在。假设不存在。不显示),图片,宽,高
CCMenuItemLabel* item3 = CCMenuItemLabel::create(labelAtlas, this, menu_selector(MenuTestLayer::menuCallbackDisabled));
//创建一个CCMenuItemLebel标签 CCMenuItemSprite* item1 = CCMenuItemSprite::create(CCSprite::create("a.png"), CCSprite::create("a.png"), CCSprite::create("a.png"), this, menu_selector(MenuTestLayer::menuCallback));
//创建一个CCMenuItemSprite,參数:加入三种状态CCSprite,加入item1的节点,注冊返回监听 // 创建一个CCMenuItemToggle
CCMenuItem *subitem1 = CCMenuItemFont::create("no");
CCMenuItem *subitem2 = CCMenuItemFont::create("yes");
CCMenuItemToggle *itemToggle = CCMenuItemToggle::create(subitem1);
itemToggle->addChild(subitem2);