cocos2d-x 学习笔记 CCTextFieldTTF

来源:互联网 发布:安徽电视台网络直播 编辑:程序博客网 时间:2024/06/03 06:08
CCSprite:
setScale(int); 设置缩放比例,
可以通过使用 getChildByTag(int)// 来获得CCNode对象。
CCLabelTTF : 显示文字的文本类
CCLaelAtlas: 利用加载一张字体图片资源来创建一个CCLabelAtlas对象。
CCTextFieldTTF 输入框。的使用方法:
创建的函数需要继承与cocos2d::CCTextFieldDelegate
CCTextFieldDelegate 接口,当需要实现输入框的事件时,需要重写一些方法:
virtual bool onTextFieldAttachWithIME(CCTextFieldTTF * sender){{
 CCLOG("启动输入");
 return false; // 启动,如果返回true则不启动。
}};// 当用户启动虚拟键盘时的回调函数
 virtual bool onTextFieldDetachWithIME(CCTextFieldTTF * ){CCLOG("关闭输入");return false;//关闭,如果返回true,则不返回};// 当用户关闭虚拟键盘时的回调函数
 virtual bool onTextFieldInsertText(CCTextFieldTTF*,const char*,int){CCLOG("输入字符");return false;};//当用户输入时的回调函数
 virtual bool onTextFieldDeleteBackward(CCTextFieldTTF*,const char*,int){CCLOG("删除字符");return false;}//当用户删除时的回调函数。
在实现的时候,需要绑定接口:
例如:
CCTextFieldTTF * test = CCTextFieldTTF::textFieldWithPlaceHolder("please input ","Helvetica",23);
 test->setPosition(ccp(100,100));
  test->setDelegate(this); //绑定接口;
     test->attachWithIME(); //打开输入
 test->detachWithIME();//关闭输入

如果需要判断触摸点是否为你所需要的控件,则我们可以通过判断触摸点的坐标的范围是否在你所希望的范围内,通过范围比较来进行确定。 
#ifndef TESTTEXTFIELD#define TESTTEXTFIELD#include"cocos2d.h"USING_NS_CC;class TextField:public CCTextFieldDelegate {public:  virtual bool onTextFieldAttachWithIME(CCTextFieldTTF * sender){{CCLOG("启动输入");return false;}};// 当用户启动虚拟键盘时的回调函数virtual bool onTextFieldDetachWithIME(CCTextFieldTTF * ){CCLOG("关闭输入");return false;};// 当用户关闭虚拟键盘时的回调函数virtual bool onTextFieldInsertText(CCTextFieldTTF*,const char*,int){CCLOG("输入字符");return false;};//当用户输入时的回调函数virtual bool onTextFieldDeleteBackward(CCTextFieldTTF*,const char*,int){CCLOG("删除字符");return false;}//当用户删除时的回调函数。};#endif

当创建开关菜单项的时候:
CCMenuItemToggle 开关菜单选项,可以有多个按钮
CCMenuItemToggle ::createWithTarget(cocos2d::CCObject*,target,SEL_MenuHandler selector, cocos2d::CCMenuItem*item...);
参数 1 : 触发的目标。
参数2:触发的目标函数
参数3: CCMenuItem 对象的可变参数列表

CCMenuItemToggle
例如:
CCMenuItemFont* fontItem1 = CCMenuItemFont::create("ON");CCMenuItemFont* fontItem2 = CCMenuItemFont::create("OFF");CCMenuItemToggle* toggleItem = CCMenuItemToggle::createWithTarget(this,menu_selector(TestLayer::HaveFun),fontItem1,fontItem2,NULL);toggleItem->setPosition(ccp(300,240));



 

原创粉丝点击