cocos2d获取ScrollView的滚动距离

 

// 可以滚动区域的高度
float a = m_pScrollView->getInnerContainer()->getSize().height;
// 滚动的距离
float b = m_pScrollView->getInnerContainer()->getPositionY();

今天项目中要实现一个功能,设计分辨率是480 * 800,背景图的尺寸是480 * 1211,里面还有个关卡选择(scrollview)。要求拖动关卡的scrollview,背景图也要动,当scrollview运动到最上面时,背景图也要运动到最上面。

实现代码:

// 可以滚动区域的高度
float a = m_pScrollView->getInnerContainer()->getSize().height;
// 滚动的距离
float b = m_pScrollView->getInnerContainer()->getPositionY();
m_pBgSpr->setPositionY( startY + ( b * ( bgH - viewSize.height ) / ( a - viewSize.height ) ) );

注:m_pBgSpr:背景图,startY:背景图刚开始加载进来时候的纵坐标,b:滚动的距离,bgH:背景图的高度 ,viewSize:设计分辨率尺寸,a:可以滚动区域的高度

posted @ 2016-03-31 18:48  色色先生  阅读(786)  评论(0编辑  收藏  举报