为什么我在不同的设备中获得不同的CGFloat值

时间:2016-04-27 11:49:40

标签: ios iphone cocos2d-iphone cocos2d-x cocos2d-x-3.0

您的CGFloat值根据设备显示不同的值。

我正在使用iPhone的cocos2d游戏

我正在尝试打印 dt

在iPhone 5中显示0.0166666675

但在iPhone 6中显示5.0176358830256065E-315

我正在使用此代码

-(void)update:(CGFloat)dt {
static CGFloat time = 0;
time += dt;
 if (time >= 3) {
    [self unscheduleUpdate];
    time = 0;
    if ([self getChildByTag:999].visible)
    {
        [self hideGuide];
    }
} }

1 个答案:

答案 0 :(得分:0)

你得到了不同的结果,因为32位和32位的CGFloat值不同。 64位设备,

typedef float CGFloat;// 32-bit
typedef double CGFloat;// 64-bit

我认为这会对你有帮助