1.打开从网上下载的资源
从网上下载的源码在自己电脑上打不开,原因是路径和版本的问题。一般情况下可以自己新建一个项目。替换文件夹里class和resources里除了appDelegate的所有文件。如果新建的项目有运行过还需要删除win32里面debug文件夹里面的所有东西。然后再运行就可以了。
2.创建label
另外今天学的是基本的创建label的方法。
auto label1 = Label::create("this is the first label", "Arial", 36);
label1->setPosition(210, 310);
this->addChild(label1);
TTFConfig ttfconfig("fonts/chunkmuffinhollowwide.ttf", 36);//使用从网上下载的字体
auto label2 = Label::createWithTTF(ttfconfig, "this is the second label");
label2->setPosition(270, 250);
this->addChild(label2);
auto label3 = Label::createWithTTF("this is the third label", "fonts/Marker Felt.ttf", 36);//第二种方法使用从网上下载的字体
label3->setPosition(200, 190);
this->addChild(label3);
auto label4 = Label::createWithTTF("this is the fourth label", "fonts/Marker Felt.ttf", 36);//另一种从网上下载的字体
label4->setPosition(280, 130);
label4->enableShadow(Color4B::GREEN, Size(5, 5));//阴影,size表示偏移量
label4->enableOutline(Color4B::RED, 3);//字体边框,颜色,粗细
this->addChild(label4);
auto label5 = Label::createWithTTF("this is the fifth label", "fonts/Marker Felt.ttf", 36);
label5->setPosition(200, 70);
label5->enableGlow(Color4B::GREEN);
this->addChild(label5);
还有就是cocos里面显示中文是不能和显示英文一样的创建方法,一般是用xml来显示。xml文件是放在resource文件夹里面的,这里显示中文问了下旁边的安卓小哥好像和安卓有点像。
显示中文的代码
auto *chnStrings = Dictionary::createWithContentsOfFile("CHN_Strings.xml");//读取xml文件
const char *str1 = ((String*)chnStrings->objectForKey("string1"))->getCString();
auto* label1 = Label::create(str1, "Arial", 36);
label1->setPosition(320,270);
addChild(label1);
还有就是xml文件最好用记事本来打开。保存的时候编码方式不要选择默认ansi,必须是utf8。
3.添加图片
添加一张图片作为背景。
auto *bg = Sprite::create("img.jpg");
bg->setPosition(320, 160);
addChild(bg);
还有一个方法设置图片的重心。
bg->setAnchorPoint(Vec2(0.5f, 0.5f));//0.5f表示的是1/2,这里就是正好平铺整个画面