3.4 常用的两种 layer 层 3.7 字体与文本
3.4 常用的两种 layer 层
//在cocos2d-x中,经常使用到的两种 layer 层 : CCLayer 和 CCLayerColor
//CCLayer 的创建
CCLayer* layer = CCLayer::create();
//CCLayerColor 的创建
CCLayerColor* layerColor = CCLayerColor::create(const cocos2d::ccColor4B &color); //RGBO
/*
注意:
新创建的 CCLayer 和 CCLayerColor 层如果没有手动设置其大小,默认是当前设备的宽高作为 layer 的尺寸
CCLayer 与 CCLayerColor 虽然默认锚点是 (0.5, 0.5), 坐标(0, 0),但是创建后的层总是充满屏幕的
*/
3.7 字体与文本
在使用字体的时候需要注意, CCLabelTTF 每调用 setString 改变显示字符串的时候,一个新
的OPENGL纹理将会创建。也就意味着调用 setString 函数和创建一个新的文本一样慢。
∴ 频繁 更新时 建议尽可能不使用 CCLabelTTF 对象, 考虑使用 CCLabelAtlas 或 CCLabelBMFont.
//CCLabelTTF 、CCLabelAtlas 、CCLabelBMFont
/*1.CCLabelTTF*/
CCLabelTTF::create(const char* string, const char* fonName, float fontSize);
//参数1:需要显示的字符串 参数2:字体名称 参数3:字体大小
CCLabelTTF::create();
//默认无参创建,默认使用字体类型 Helvetica
//常用函数为: setString(const char* label);
/*2.CCLabelAtlas*/
//常用函数 setString(const char *label); setColor(const ccColor3B& color)
CCLabelAtlas::create(const char* string, const char* charMapFile, unsigned int itemWidth, unsigned int itemHeight, unsigned int startCharMap);
//作用:利用一张字体图片资源来创建一个 CCLabelAtlas 对象
//参数 1:需要显示的字符串
//参数 2:文字图片资源名称
//参数 3:每个文字的宽
//参数 4:每个文字的高
//参数 5:字体起始标示
CCLabelAtlas::create(const char* string, const char* fntFile);
//作用:利用加载字体配置文件,来创建一个 CCLabelAtlas 对象
//参数 1:需要显示的字符串
//参数 2:字体配置文件的名称
/*3.CCLabelBMFont*/
CCLabelBMFont::create(const char* str, const char* fntFile);
//参数 1:需要显示的文字
//参数 2:字体资源文件的名称
//示例代码
//---------------CCLabelTTF
CCLabelTTF* pLabel = CCLabelTTF::create("visionFont", "Thonburi", );
CCLabelTTF* pLabel2 = CCLabelTTF::create();
pLabel2->setFontSize();
pLabel2->setString("visionFont");
//---------------CCLabelAtlas
CCLabelAtlas* label = CCLabelAtlas::create("visionFontAtlas", "testFont.png", , , ' ');
label->setColor(ccc3(, , ));
CCLabelAtlas* label2 = CCLabelAtlas::create("visionFontAtlas2", "testfont.plist");
label2->setString("");
//---------------CCLabelBMFont
CCLabelBMFont* labelBM = CCLabelBMFont::create("stand up font", "testFont.fnt");
3.4 常用的两种 layer 层 3.7 字体与文本的更多相关文章
- web 中常用的两种上传文件的方法总结
这里我们来总结整理一下常用的两种文件上传方式以及要注意的东西: 1.springmvc .MultipartFile 的上传方式. 2.org.apache.commons.fileupload 使用 ...
- java 获取键盘输入常用的两种方法
java 获取键盘输入常用的两种方法 方法1: 通过 Scanner Scanner input = new Scanner(System.in); String s = input.nextLine ...
- 最常用的两种C++序列化方案的使用心得(protobuf和boost serialization)
导读 1. 什么是序列化? 2. 为什么要序列化?好处在哪里? 3. C++对象序列化的四种方法 4. 最常用的两种序列化方案使用心得 正文 1. 什么是序列化? 程序员在编写应用程序的时候往往需要将 ...
- spring 中常用的两种事务配置方式以及事务的传播性、隔离级别
一.注解式事务 1.注解式事务在平时的开发中使用的挺多,工作的两个公司中看到很多项目使用了这种方式,下面看看具体的配置demo. 2.事务配置实例 (1).spring+mybatis 事务配置 &l ...
- java操作excel常用的两种方式
Excel是我们平时工作中比较常用的用于存储二维表数据的,JAVA也可以直接对Excel进行操作,在这篇博客中将为大家介绍两种操作Excel的方式,分别为:jxl和poi. 对于两者的区别网上有测试如 ...
- TF之RNN:TF的RNN中的常用的两种定义scope的方式get_variable和Variable—Jason niu
# tensorflow中的两种定义scope(命名变量)的方式tf.get_variable和tf.Variable.Tensorflow当中有两种途径生成变量 variable import te ...
- apache常用的两种工作模式 prefork和worker
apache作为现今web服务器用的最广泛也是最稳定的开源服务器软件,其工作模式有许多中,目前主要有两种模式:prefork模式和worker模式 一.两种模式 prefork模式: prefork是 ...
- java:常用的两种设计模式(单例模式和工厂模式)
一.单例模式:即一个类由始至终只有一个实例.有两种实现方式(1)定义一个类,它的构造方法是私有的,有一个私有的静态的该类的变量在初始化的时候就实例化,通过一个公有的静态的方法获取该对象.Java代码 ...
- 常用的两种web单点登录SSO的实现原理
单点登录SSO(Single Sign On)说得简单点就是在一个多系统共存的环境下,用户在一处登录后,就不用在其他系统中登录,也就是用户的一次登录能得到其他所有系统的信任.单点登录在大型网站里使用得 ...
随机推荐
- 约瑟夫环的C语言数组实现
约瑟夫环问题的具体描述是:设有编号为1,2,……,n的n个(n>0)个人围成一个圈,从第1个人开始报数,报到m时停止报数,报m的人出圈,才从他的下一个人起重新报数,报到m时停止报数,报m的出圈, ...
- Raspberry Pi开发之旅-实现云平台监控
一.基本设置 1 sudo raspi-config 移动到第五项“Enable Camera”,回车进入,按tab键切换到“Enable”回车确认.回到主菜单,tab键切换到“Finish”回车确认 ...
- 自己动手编译Android源码(超详细)
http://www.jianshu.com/p/367f0886e62b 在Android Studio代码调试一文中,简单的介绍了代码调试的一些技巧.现在我们来谈谈android源码编译的一些事. ...
- linux 网卡buffer大小
参考截取一部分:https://blog.csdn.net/ysu108/article/details/7764461 在linux下可以修改协议栈改变tcp缓冲相关参数: 修改系统套接字缓冲区 e ...
- Nginx配置指令的执行顺序
rewrite阶段 rewrite阶段是一个比较早的请求处理阶段,这个阶段的配置指令一般用来对当前请求进行各种修改(比如对URI和URL参数进行改写),或者创建并初始化一系列后续处理阶段可能需要的Ng ...
- js原生插件格式解析
一个合格的插件必须满足以下要求: 1.拥有独立作用域与用户作用域隔离,插件内的私有变量不可影响用户定义的变量 2.拥有默认参数 3.提供配置方法让用户可改变参数 4.提供监听接口,以监听页面操作 5. ...
- 20145230《java学习笔记》第十周学习总结
20145230<Java程序设计>第十周学习总结 教材学习内容总结 网络编程 网络编程就是在两个或两个以上的设备(例如计算机)之间传输数据.程序员所作的事情就是把数据发送到指定的位置,或 ...
- Kubernetes busybox nslookup问题
使用最新版本的busybox会出现nslookup提示无法解析的问题: Server: 10.96.0.10 Address: 10.96.0.10:53 ** server can't find k ...
- mysql慢查询设置
不同版本的mysql命令和配置不一样,以下是2个版本 修改配置文件 log-slow-queries=/alidata/mysql-log/mysql-slow.log long_query_time ...
- 一言(ヒトコト)Hitokoto API
『想要成为无论多么悲伤的时候,也能够漂亮微笑的人吧.』 Hitokoto API 更新:2014.02.22 问题/反馈:api # hitokoto.us 数据获取:[ 数据获取 ] 调用举例:[ ...