2014-01-09 70 views
1

我想添加一个UIScrollView到CCSprite,因为我想管理z值并且滚动视图始终位于顶部。将UIScrollView添加到CCSprite

我已经通过添加到[[CCDirector sharedDirector]view]实现了这一点,但正如您所知,它遍布顶端,我不想那样做。请帮助我如果有人知道如何做到这一点。

+0

你能解释一下你想要做的更好吗?一个例子可能有帮助。另外,你为什么这样做?谢谢。 – sergio

+0

这是一个疯狂的想法,这是不可能的。您不能将uiview添加到ccnode。你需要自己实现scrollview或者CCScrollView的谷歌。但如果你问我,我会说你应该忘掉它 –

+0

不是一个疯狂的想法(我读过差远了),但仍是不可能的。所有的cocos2d节点都包含在cocos2d视图中。您只能在cocos2d视图背后添加其他视图或(在代码更改后)添加其他视图。这就是CCScrollView如此受欢迎的原因。 – LearnCocos2D

回答

1
try this code (cocos2dx) 

CCSprite *sprite; 
ScrollView= CCScrollView::create(CCSizeMake(mWidth,mHeight)); 
ScrollView->setDirection(kCCScrollViewDirectionVertical); 

CCLayer* messageLayer = CCLayer::create(); 
messageLayer->addChild(sprite,1); 

messageLayer->setContentSize(CCSizeMake(mWidth, maxContentHeight)); 
float offsetY = mHeight - messageLayer->boundingBox().size.height; 
ScrollView->setContainer(messageLayer); 
ScrollView->setContentOffset(ccp(0, offsetY)); 

ScrollView->updateInset(); 
ScrollView->setPosition(ccp(0,mHeight/6)); 
this->addChild(ScrollView); 
+0

感谢您的帮助,但遗憾KARTHIK我不是寻找一个解决方案。 – Haroon