cocos2d- x3将精灵添加到布局中
cocos2d-x 3 add a Sprite into a Layout
当我这样做的时候,它工作了:
Layout* layout = Layout::create();
layout->setLayoutType(Layout::Type::HORIZONTAL);
layout->setContentSize(Size(280, 150));
layout->setPosition(Vec2(visibleOrigin.x + 100, visibleOrigin.y + visibleSize.height - 100));
addChild(layout);
auto jacket = Button::create("jacket.png", "jacket.png", "jacket.png", Widget::TextureResType::PLIST);
layout->addChild(jacket);
但是当我这样做时(添加一个精灵而不是上面代码中添加的按钮):
Layout* layout = Layout::create();
layout->setLayoutType(Layout::Type::HORIZONTAL);
layout->setContentSize(Size(280, 150));
layout->setPosition(Vec2(visibleOrigin.x + 100, visibleOrigin.y + visibleSize.height - 100));
addChild(layout);
auto jacket = Sprite::createWithSpriteFrameName("jacket.png");
layout->addChild(jacket);
然后我在layout->addChild(jacket);
上得到断言失败,消息是Expression: vector subscript out of range
。我想布局中不支持精灵吧?那么,在布局中添加图像的正确方法是什么呢?我应该像下面这样使用ImageView
吗?
auto jacket = ImageView::create("jacket.png",TextureResType::PLIST);
layout->addChild(jacket);
如果是,为什么?Sprite
和Image
有什么区别?
如果我理解正确的话,按钮将尝试加载名为"jacket.png"的单独文件,而createWithSpriteFrameName初始化器将尝试从先前加载的纹理图集
中获取jacket.png帧这个问题可能很简单,比如夹克图像不在纹理图集中,或者在运行这段代码之前没有加载图集(帧)
相关文章:
- 如何在qt中将对象添加到现有布局中?--已解决
- 将小部件添加到布局后,QStylesheet 不起作用
- 将布局从一个类添加到另一类不起作用
- 如何将项目添加到QT中的布局中
- 如果有可用的位置,如何在布局中添加小部件?否则不添加
- 如何将添加的小部件定位到基于同一布局中的另一个小部件的布局中
- 动态地将自定义 qt 小部件添加到框架中,而无需每次都更改布局
- 如何在Qt中将滚动条添加到网格布局
- 将类布局添加到另一个类布局:"The program has unexpectedly finished."
- Qt动态创建布局并向布局添加小部件
- Qt在主布局中添加布局
- 将组件添加到qt创建者从代码中创建的布局中
- 将自定义小部件动态添加到烘焙布局中
- cocos2d- x3将精灵添加到布局中
- Qt小部件布局添加事件
- 如何在QMainWindow布局中添加小部件
- 在QT c++中为包含布局的小部件添加滚动条
- QGLWidget添加到布局时崩溃
- 清理Qt布局并添加其他小部件不起作用.幽灵小部件留下来.Qt错误
- 在QMain窗口上添加QT布局的代码