原因在于执行LabelAtlas::create("","prop_num.png",16,20,'0')函数后,第一个string参数如果填空,执行setstring方法时,跳过_textureAtlas->resizeCapacity(len);。
所以紧接着的一个精灵绘制不出
void LabelAtlas::setString(const std::string &label)
{
ssize_t len = label.size();
if (len > _textureAtlas->getTotalQuads())
{
_textureAtlas->resizeCapacity(len);
}
_string.clear();
_string = label;
this->updateAtlasValues();
Size s = Size(len * _itemWidth, _itemHeight);
this->setContentSize(s);
_quadsToDraw = len;
}
所以第一个参数不要置空