cocos2dx 3.2 Scale9Sprite点九图

cocos2dx 3.2 Scale9Sprite点九图

本文部分转载至

cocos2dx 3.x Scale9Sprite的认识

 

1. Scale9Sprite 认识

Scale9Sprite 是一张可拉伸的精灵。只要给他设置一下大小,它就能自动拉伸。

2. Scale9Sprite的使用

 

 1 #include "GUI/CCControlExtension/CCScale9Sprite.h"
 2 
 3 USING_NS_CC_EXT;
 4 
 5 bool HelloWorld::init()
 6 {
 7     //////////////////////////////
 8     // 1. super init first
 9     if ( !Layer::init() )
10     {
11         return false;
12     }
13     
14     Size visibleSize = Director::getInstance()->getVisibleSize();
15     Vec2 origin = Director::getInstance()->getVisibleOrigin();
16 
17     // 使用普通图片加载
18     Sprite *sprite = Sprite::create("button.png");
19     sprite->setPosition(Vec2(visibleSize.width / 2, visibleSize.height - 100));
20     this->addChild(sprite);
21 
22     // 使用 CCScale9Sprite 点9图
23     Scale9Sprite *scale9Sprite = Scale9Sprite::create("button.png");
24     scale9Sprite->setPosition(Vec2(visibleSize.width / 2, visibleSize.height * 0.3));
25     this->addChild(scale9Sprite);
26     // 使图片拉伸
27     scale9Sprite->setPreferredSize(Size(visibleSize.width * 0.8, visibleSize.height * 0.3));
28     scale9Sprite->setCapInsets(Rect(10, 10, 8, 8));
29 
30     
31     return true;
32 }

 

运行结果:

 

3. Scale9Sprite运行出现错误解决方法


(1)无法打开包括文件:“extensions/cocos-ext.h”: No such file or directory

解决方案:在项目上右键选择【属性】->【c/c++】->【附加包含目录】,编辑【附加包含目录】在最后添加$(EngineRoot),点击【确定】按钮。

(2)1 个无法解析的外部命令

出现这个问题的原因,是由于没有引用libExtensions库。

如何引用libExtensions库呢?

首先,在解决方案上右键,选择【添加】->【现有项】,选择cocos2d/extensions,点击【确定】按钮。




然后,在项目上右键,选择【引用】,在引用页面选择【添加新引用项】,将libExtensions勾选上,点击【确认】按钮。

 

posted @ 2015-06-05 15:48  silent-bobo  阅读(1114)  评论(0编辑  收藏  举报