2.1适配问题

2.1是我用错了还是有bug

cocos2d::Node *node = CSLoader::createNode(mLoadedFile,this);//传入Studio2.x的资源路径
if (node)
{
addChild(node);
}
在我切换分辨率的手机时得到的效果不是我想要的

studio结构 分辨率为640 *1136
Scene
Panel_1
Sprite_1

Sprite_1的坐标为50% 50%

在6401136的手机上程序中解析 坐标为320568

在640960的手机上程序解析坐标为 320568

查看代码

WidgetReader::setLayoutComponentPropsWithFlatBuffers 中

layoutComponent->setPositionPercentX(positionXPercent);这个函数中

void LayoutComponent::setPositionPercentX(float percentMargin)
{
_positionPercentX = percentMargin;

Node* parent = this->getOwnerParent();
if (parent != nullptr)
{
_owner->setPositionX(parent->getContentSize().width * _positionPercentX);
this->refreshHorizontalMargin();

    }

}

parent 一直都是空。。。没法设置坐标百分比坐标

还有rootNode->getContentSize() 永远都是640*1136 不会根据手机分辨率改变而改变

求解答。。。

1、size 需要你执行下
auto node = CSLoader::createNode(“xxxx.csb”)
Size frameSize = Director::getInstance()->getVisibleSize();
node->setContentSize(frameSize);
ui::Helper::doLayout(node);

2、布局参考这篇文章:
http://www.cocoachina.com/bbs/read.php?tid-280071.html

ui::Helper::doLayout(node)在lua项目中是怎么用的呢?3.4版本

ccui.Helper:doLayout(node)

3Q,已经找到方法了,顺便回复在了东扬帖子后面