为什么accelX总是等于零?

时间:2011-08-03 16:20:11

标签: iphone ios api cocos2d-iphone accelerometer

在我的应用程序中,当我进行归档(产品 - >存档)共享以获取.api然后转到itunes并安装在我的iPhone中我在设备控制台中注意到accelX始终等于零为什么?

请注意,如果我点击xcode中的播放都能正常工作

这是我的代码:

- (void)accelerometer:(UIAccelerometer *)accelerometer 
    didAccelerate:(UIAcceleration *)acceleration {

CGSize winSize = [CCDirector sharedDirector].winSize;
   static float accelX = 0;
    #define kFilteringFactor 0.1
    #define kRestAccelX 0.6
    #define kShipMaxPointsPerSec (winSize.height*0.5)
    #define kMaxDiffX 0.2
    UIAccelerationValue rollingX;

rollingX = (acceleration.x * kFilteringFactor) + 
    (rollingX * (1.0 - kFilteringFactor));    

 accelX = acceleration.x - rollingX;
NSLog(@"accelX :%f",accelX);


float accelDiffX = kRestAccelX - ABS(accelX);
float accelFractionX = accelDiffX / kMaxDiffX;
float pointsPerSecX = kShipMaxPointsPerSec * accelFractionX;

_shipPointsPerSecY = pointsPerSecX;

}

1 个答案:

答案 0 :(得分:0)

解决方案是替换:

UIAccelerationValue rollingX;

通过

UIAccelerationValue rollingX = 0;