Cocos2d-x的学习之旅(六)输入框

来源:互联网 发布:淘宝可以申请几个账号 编辑:程序博客网 时间:2024/05/23 01:18

声明

本教程仅用于初学cocos2dx同学使用,内容由本人(Code-Man)编写,此教程使用cocos2dx版本为3.4。本教程内容可以自由转载,但必须同时附带本声明,或注明出处。QQ群:Cocos2d-CodeMonkey ,461679592羡慕

又是一个深夜啊,但也就是深夜才更有灵感解决问题。这大概就是CodeMonkey的职业病吧!!!白天上班总提不起劲,晚上就睡不着。我希望有一天,我们程序员能自由分配自己的上班时间,只要能解决问题管你来不来公司。虽然国外很多企业实现了在家办公,生在天朝的我们也就只有羡慕的份了。。。。

进入正题吧。今天学的是输入框,这个是什么?不要问拉低智商的问题。。。不想回答。今天的目标是学会用,知道输入框存在的坑。


今天任务:做一个屌炸天的兑换码的兑换界面

今天的资源:

终于清除了我们用了几节课的场景,背景不换继续我们《罪恶王冠》。哈哈哈!!!!

先来拼图吧,有了前面的知识,为了不多说废话,不会重复讲已经说过的知识。




效果图:


如果把我们的输入框的背景去掉,使用Scale9Sprite看看是一个怎样的效果???


由于我们输入框的背景图是椭圆形的所有,文字跟输入框的融合有点突入。并不美观。如果你要调整文字的大小你需要去调整输入框的高度,但相应的输入框的背景图片也会相应的缩小,输入框背景和文字成正比关系。不管你怎么调它都会按照这个比例调整。所有我们才要把输入框文字和输入框背景分开。

关于为什么输入框文字不管怎么设置的大小都改变不了的情况。我真不知道,哈哈哈!!!!,如果知道的小伙伴欢迎告诉我,但我知道只要改变输入框的高度可以改变文字的大小。


                //输入框背景    auto inputBox = Sprite::create("exchage_input_frame.png");//    inputBox->setPosition(exchage_bg->getContentSize()/2+Size(0, 30));//    exchage_bg->addChild(inputBox);            /**     *  输入框控件     *  1.Size 输入框的大小     *  2.Scale9Sprite 输入框背景,由输入框的大小决定输入框背景的大小,这里我们并没有传入参数,而是自己创建了一个输入框背景。     */    auto editBox = EditBox::create(Size(inputBox->getContentSize().width,inputBox->getContentSize().height), Scale9Sprite::create("exchage_input_frame.png"));    editBox->setPosition(exchage_bg->getContentSize()/2+Size(30, 30));    editBox->setMaxLength(8);   //输入框最多能输入多少个字符    editBox->setText("请输入兑换码"); //初始化文字    editBox->setFontColor(Color3B(255,0, 0));   //文字颜色    editBox->setFontSize(10);   //文字的大小:注意!!!  这个设置没有任何效果。这也是为什么要自己建立背景的一个问题    exchage_bg->addChild(editBox);            //兑换按钮    auto Exchangebuttom =MenuItemImage::create("exchage_button.png", "exchage_button.png");    Exchangebuttom->setPosition(Point(exchage_bg->getContentSize().width/2,40));    Exchangebuttom->setCallback([&,editBox](Ref*obj){                //取得输入框里面的文字,输出到控制台        log("%s",editBox->getText());    });            auto menu = Menu::create(Exchangebuttom,NULL);    menu->setPosition(Point::ZERO);    exchage_bg->addChild(menu);        

注意!!!!!!!!!!

如果使用的是cocos2dx3.2的Monkey,在IOS8以上的真机调试的时候一定会遇到,整个游戏画面向右移动的问题。

解决方法在这里:http://www.cocoachina.com/bbs/read.php?tid-271139.html  既然有解决方法我就不重复了。

如果还不能解决的欢迎加入Q群,可以帮你解决这个问题。




最近心情很郁闷~~~~~~ 下期见,我是CodeMonkey  我有我的傲娇!!

本文Demo下载



0 0
原创粉丝点击