_scrollingDelta是GameLayer里的成员:
float _scrollingDelta;
我在GameLayer的init里给_scrollingDelta赋值:
auto bg = widget->getChildByName(“bg”);
_scrollingDelta = bg->getContentSize().width / 900;
_scrollingDelta是滚动条0.1秒改变的位移。这里的值是:
_scrollingDelta 1.20000005 float
然后是:
auto acts = Sequence::create(
MoveTo::create(1.5f, endPos),
CallFunc::create(
=]() {
scrollbar->schedule(schedule_selector(GameLayer::scrolling), 0.1f);
}
), NULL);
scrollbar->runAction(acts);
.....................................................
这些代码都在init里
下面是每隔0.1秒调用的函数,这里改变滚动条的位置:
void GameLayer::scrolling(float dt)
{
this->setPositionX(this->getPositionX() - _scrollingDelta);
}
可是这里的_scrollingDelta调试时发现却是一个类似随机值的值,并不是1.20000005
_scrollingDelta 2.55187212e-038 float
每隔0.1秒进入函数都是这个值。
而如果关闭程序再打开,这个值又会变,比如是:
_scrollingDelta 9.362e-039#DEN float
请问这是怎么回事?

脖子都疼了!