2015-04-21 69 views
0

好的,夥計們,這是交易。無法在縮放對象上添加子精靈

aboutBackground = Sprite::create("fadeBack.png"); 
aboutBackground->setScale(winSize.width, winSize.height); 
aboutBackground->setPosition(winSize.width*0.5, winSize.height*0.5); 
this->addChild(aboutBackground); 

Sprite *sprAboutPanel = Sprite::create("aboutPanel.png"); 
sprAboutPanel->setPosition(aboutBackground->getBoundingBox().size.width*0.5, aboutBackground->getBoundingBox().size.height*0.5); 
aboutBackground->addChild(sprAboutPanel); 

在縮放之前aboutBackground sprite它完美地工作。但因爲aboutBackground只是一個褪色的背景,我決定與1px圖片並將其縮放到全屏。但是現在sprAboutPanel沒有出現在屏幕上。我真的很好奇爲什麼? Thx爲您的迴應!

+0

你知道'sprAboutPanel'定位將是相對於'aboutBackground'的位置?嘗試縮放'winsize'的'aboutBackground'一半並反饋您的觀察結果。 – Emadpres

回答

1

你可以在這個實例中使用的一個技巧是不將about面板添加爲背景的子元素,而是添加場景。縮放父母會導致兒童因爲位置縮放而造成的棘手問題。如果將aboutPanel的位置設置爲(0.5,0.5),您可能會在代碼中發現它可能會按預期工作。

我反而改變:

aboutBackground->addChild(sprAboutPanel); 

這樣:

this->addChild(sprAboutPanel);