比如 我显示一个富文本 花费XX金币购买XX个XXXX道具? 我设置了换行, 然后 换行后 有些会显示全, 有些换行后会缺少几个字!!! 求解决 BUG这么多?
代码如下
RichText* _richText = RichText::create();
// _richText->setSizeType(<#SizeType type#>)
_richText->ignoreContentAdaptWithSize(false);
//_richText->setContentSize(CCSizeMake(150,100));
_richText->setSize(CCSizeMake(250,100));
_richText->setPosition(ccp(spxBg->boundingBox().size.width/2+10,spxBg->boundingBox().size.height/2-20));
char richTemp;
switch (tempGoods->g_xl_xiaoHaoLeiXing) {
case 0: //金钱
sprintf(richTemp, “金钱ⅹ%d”,tempGoods->g_xl_danJia);
break;
case 1: //仙玉
sprintf(richTemp, “仙玉ⅹ%d”,tempGoods->g_xl_danJia);
break;
}
sprintf(richTemp, “%d”,tempGoods->g_xl_shuLiang);
sprintf(richTemp, “%s”,tempGoods->daoJuName);
const int richLength = 7;
const char *cRichData =
{
"花费",richTemp,"购买",richTemp,"个",richTemp,"?"
};
const ccColor3B richColor =
{
ccWHITE,ccGREEN,ccWHITE,ccGREEN,ccWHITE,ccGREEN,ccWHITE
};
for (int i = 0; i < richLength; i++)
{
RichElementText * re = RichElementText::create(i, richColor*, 255, cRichData*, FONT_BOLD, 24);
_richText->pushBackElement(re);
}
spxBg->addChild(_richText,1);
**
个人用的是 2.2.4
解决了… 我表示日啊.
把
for (int i = 0; i < richLength; i++)
{
RichElementText * re = RichElementText::create(i, richColor, 255, cRichData, FONT_BOLD, 24);
_richText->pushBackElement(re);
}
换成如下代码就好了
for (int i = 0; i < richLength; i++)
{
CCLabelTTF *ttf = CCLabelTTF::create(cRichData*, FONT_BOLD, 24);
ttf->setColor(richColor*);
RichElementCustomNode * re = RichElementCustomNode::create(i, richColor*, 255,ttf);
_richText->pushBackElement(re);
}***
赶紧mark一下= =。。。
mark
