Andengine 中可变文本 Text 使用中遇到的问题

旧版本引擎不可变文本用Text, 可变的用new ChangeableText就可以了。查看源码发现新版本引擎没有了ChangeableText,但是对Text做了修改;

实际应用中注意文本长度大小;

eg:

如果你要改变文本内容,比如改变玩家金币分数 金币数初始为5,游戏结束还剩1条命则+5金币:

text = new Text(x, y, mFont, "05",getVertexBufferObjectManager());

mScene.attachChild(text);

 

int x =Integer.parseInt((String)text.getText());

x+=5;

text.setText(""+x)

没有问题;但是如果是这种情况:

text = new Text(x, y, mFont, "5",getVertexBufferObjectManager());

mScene.attachChild(text);

 

int x =Integer.parseInt((String)text.getText());

x+=5;

text.setText(""+x)

这里会报数组越界问题;

text new时就已分配大小;

后来发现 text 有提供长度的构造方法:

text = new Text(667, 175, mFont, yourString,"XXX".length(), getVertexBufferObjectManager());这样初始时长度大些就没问题了。
   

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值