AndEngine Text的使用心得

AndEngine Text的使用心得

最近在游戏里面需要使用Text,所以就顺便研究了下。

Text的创建:
可以参考AndEngineExamples工程中的TextExample类。

更改Text的字体的大小,发现没有诸如setSize这样的方法可以用,唯一能做的就是在FontFactory.create这个里面进行设置。具体可以参考源文件中的FontFactory类,包括字体的粗体,什么字体,以及字体颜色等。

更改字体的颜色:
这个有点让人人摸不着头脑,发现有setColor这样的方法,但是如果预设的字体颜色是黑色的话,文字的颜色无法更改。
this.mFont = FontFactory.create(this.getFontManager(), this.getTextureManager(), 256, 256, Typeface.create(Typeface.DEFAULT, Typeface.BOLD), 25, true, Color.BLACK);

最后在AngEngine Foruns中找到了答案,建议将初始字体的颜色设置为白色就可以的,后来验证确实是这样的。顺便说下不少关于使用方面的问题可以直接在这个讨论组里面搜索。

http://www.andengine.org/forums/

setColor的方法的使用一开始也有点搞不清楚,对于固定的颜色的话,可以这样使用。

myText.setColor(Color.RED);

但是有时候需要设置自定义的颜色,比如这样:

setColor(pRed, pGreen, pBlue);

这个如果没有看源文件的中的说明的话,会发现有问题,假设我的颜色是 (red: 153,green: 102,bule: 0),

setColor(153f,102f,0f);

但是你这样使用的话,你会发现得到的颜色不是自己定义的颜色,而且你如果搜索的话大部分的例子也都是那样写的。最后还是求助源文件,在Entity类中式这样描述的:

/** * @param pRed from <code>0.0f</code> to <code>1.0f</code> * @param pGreen from <code>0.0f</code> to <code>1.0f</code> * @param pBlue from <code>0.0f</code> to <code>1.0f</code> */ @Override public void setColor(final float pRed, final float pGreen, final float pBlue) { if(this.mColor.setChecking(pRed, pGreen, pBlue)) { // TODO Is this check worth it? this.onUpdateColor(); } }

所以上面的颜色应该这样表示:

setColor(153f/255f,102f/255f,0f);

使用setText()当字串的长度超过一定的值时会出现:

 java.lang.ArrayIndexOutOfBoundsException: length=30; index=30

解決方案:

public Text(final float pX, final float pY, final IFont pFont, final CharSequence pText, final int pCharactersMaximum, final VertexBufferObjectManager pVertexBufferObjectManager)

使用这个构造方法,进行初始化。

待续。

转载于:https://my.oschina.net/u/134408/blog/82905

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/110306.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • ai的文件怎样将里面的文字转曲_PDF文件置入AI缺少字体

    ai的文件怎样将里面的文字转曲_PDF文件置入AI缺少字体AI文件中文字转曲是什么?怎么转曲?转曲百度百科

  • MinGW安装教程——著名C/C++编译器GCC的Windows版本[通俗易懂]

    前言本文主要讲述如何安装C语言编译器——MinGW,特点是文章附有完整详细的实际安装过程截图,文字反而起说明提示作用。编写本文的原因始于我的一个观点:图片可以比文字传达更多的信息,也能让其他人更容易理解作者的意图及思想。因此,我将安装MinGW的过程和步骤,编写成了这篇以图片为主的教程,为了让看到这篇文章的任何人,都可以很容易按照图片所示正确安装MinGW。一、什么是MinGW…

  • Linux stat函数_c++ stringbuffer

    Linux stat函数_c++ stringbuffer之前写过一篇关于stat命令的博客,介绍了stat命令的使用和输出信息表示,今天又见到了stat函数,因为输出原因,准备整理一下。stat函数介绍  根据《UNIX环境高级编程》中对于stat函数的解释,stat函数和stat命令一样,都是返回该文件的详细信息。函数定义为:#include&lt;sys/types.h&gt;#include&lt…

  • JAVA对象转JSON字符串时格式化日期_oracle clob转字符串

    JAVA对象转JSON字符串时格式化日期_oracle clob转字符串本案例所有代码均为原创,使用Java手写,没有借鉴其他类似工具库和网上论坛博客,也许没有经过充分测试,可能出现未知bug,因此不建议拿到正式的项目里使用。Java对象就像一个文件夹一样,没有办法知道其深度,所以采用了递归。性能方面没有测试,个人认为没有特别耗费性能的地方,除非你的对象包含很多层级。它可以支持null,字符串,数字、日期、集合等多种类型,包括以上类型的多层嵌套,都没有问题。源码不多,如下:importjava.lang.reflect.Field;importjava.lang

  • 圆柱体的立方米怎么计算公式_圆锥体积计算公式

    圆柱体的立方米怎么计算公式_圆锥体积计算公式2020-11-27石雕圆柱制作价格一般根据石雕圆柱的雕刻材料不同、颜色不同、大小及工艺的复杂程度价格区间一般在5000–25000元每根。坐落于福建省泉州市惠安县的腾磊石材有限公司是石材圆柱厂家,专业生产石雕圆柱。提供各式石雕圆柱加工,客户可来电方式咨询关于石雕圆柱。我国的石雕圆柱文化除了具有图腾性质和纪念性的华表、墓表…[详细]2020-12-14厂家加工石雕圆柱坐落于福建省泉州市惠安县…

  • 【WIN】超简单的Excel密码激活成功教程「建议收藏」

    【WIN】超简单的Excel密码激活成功教程「建议收藏」新开一Excel,同时按Alt+F11,进入VBA界面,点菜单上的插入,模块,在新出来的窗口粘贴一下代码:Subcrack()DimiAsLongDimFileNameAsStringi=0FileName=Application.GetOpenFilename("Excel文件(*.xls&amp;*.xlsx),*.xls;*.xlsx",,"VBA…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号