我今天遇到了两个有趣的问题。以下是我在编码中所做的
1.在.H文件中,我声明了一个浮点变量“currentPer”和一个CCProgressTime变量“_strengthBar”
2.在UIPanGestureRecognizer的回调函数“processPanGesture()”中,我计算了手指的移动距离,然后更新了CCProgressTime的百分比属性。但是在屏幕上,CCProgressTime的可见部分没有更新,所以我的第一个问题是为什么CCProgressTime在屏幕上没有更新百分比属性改变了?
3.最后,我在回调函数 processPanGesture() 中用手指的移动距离更新了变量“currentPer”。然后在“update”方法中,我打印currentPer,但结果总是“0”,(如果打印_stregnthBar的百分比,即使我在processPanGesture中改变了它的值,它也是“0”)为什么?我的意思是我已经改变了processPanGesture() 中 currentPer 的值。但为什么它不起作用?如果您仍然不清楚我说的内容,请看屏幕截图。任何帮助对我来说都是非常宝贵的,感谢您的关注!
图1.AppDelegate.appFinishDidLaunchOption(),注册PanGestureRecognizer
图2.GameLayer.H文件
图3.GameLayer.mm ,init(),初始化相关变量
图4.GameLayer.processPanGesture(),手势识别器的回调函数
图 5.GameLayer.update()