2016-04-27 1 views
2

Hi ma valeur CGFloat indique une valeur différente selon l'appareil.pourquoi j'obtiens une valeur CGFloat différente dans différents appareils

J'utilise jeu cocos2d pour iPhone

Je suis en train d'imprimer dt valeur

Dans iPhone 5, il montre 0,0166666675

Mais dans l'iPhone 6 il montrer 5.0176358830256065E-315

J'utilise ce code

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

Vous avez plusieurs valeurs 'CGFloat' indiqué dans le code - que l'on est vous confondre ? – luk2302

+0

Quels sont vos résultats? est-ce le résultat de 'time'? ou 'dt'? et ce que ce paramètre 'dt'? est-ce lié à l'heure ou à la date de l'appareil? – Lion

+0

Je suis imprimé dt valeur – Giresh

Répondre

0

Vous avez des résultats différents parce que la valeur CGFloat est différente pour 32bit & dispositifs 64bit,

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

Je pense que cela vous aidera