scrollView 问题求助啊。

//添加scroll view 层
CCScrollView* scrollView = CCScrollView::create(CCSizeMake(300,300));
//CCScrollView* scrollView = CCScrollView::create();

	CCLayer* scrollLayer = CCLayer::create();

	//初始化
	scrollLayer->setAnchorPoint(CCPointZero);
	scrollLayer->setPosition(CCPointZero);

	scrollLayer->setContentSize(CCSizeMake(800,800));
	
	//设置滚动显示的范围
	scrollView->setContentSize(CCSizeMake(300,300));//这里的值不知道为什么要设成250以上,否则滑动就会出现问题
	scrollView->setContainer(scrollLayer);
	//设置滚动方向,
	scrollView->setDirection(kCCScrollViewDirectionBoth);

	scrollView->setTouchEnabled(true);                         //因为要自己实现触摸消息,所以这里设为false
    scrollView->setDelegate(this);
	
	//设置scrollView 的锚点跟位置
	scrollView->setAnchorPoint(ccp(0.5,1));
	scrollView->setPosition(ccp(100,100));


	CCSprite* sprite = CCSprite::create("map_bg.png");
	scrollLayer->addChild(sprite);
	sprite->setAnchorPoint(CCPointZero);

	this->addChild(scrollView);

代码就是上面这一些,然后运行出来的图可以拖动,但是鼠标一松它就自己跑回原点了。而且只能显示一部分图片的内容。。

CCScrollView 这个的父层,如果坐标不是0 0 ,那要改下 CCScrollView 里的 beforedraw 里的坐标 改为 0,0

scrollView的AnchorPoint是默认你的layer的所以也是(0,0)的,就算你改了也没用,依然会帮你变成(0,0)的,所以你如果要改view的AnchorPoint最好自己写个方法,网上也可以查下,貌似还可以解除锚点默认的!
PS:你可以尝试下把2个锚点都设一样的,另外再设置下scrollView的offset点的位置吧!

— Begin quote from ____

lengtao 发表于 2012-12-29 10:56 url

坐标不对

— End quote

哪个的坐标有问题?scrollLayer,还是sprite图片的坐标?或者scrollview的坐标?我刚改动了下,将scrollLayer的坐标跟图片坐标都改了,终于可以通过拖动显示大部分的图片,但是还有一部分看不到,坐标怎么改都没用。