2014-12-06 4 views
-1

Это для глупо простой анимации, но я продолжаю получать это раздражающее предупреждение «выражение результат не используется». Код выглядит следующим образом:Раздражающий «выражение result unused» warning

-(IBAction)thingOneTapped:(UIGestureRecognizer *)sender{ 
    if ((isLevel = YES)) { 
     thingOneEnded = YES; 
     goingToThingOne = [NSTimer scheduledTimerWithTimeInterval:0.05 target:self selector:@selector(otherThingToOne) userInfo:nil repeats:YES]; 
     x = 11; 
     y = 118; 
    } 
    else (isLevel = NO); { 
     [self viewDidLoad]; 
    } 
} 

-(void)otherThingToOne{ 
    if ((isLevel = YES) && (isLevelOne = YES)) { 

     if ((x > 0) && (y > 0)) { 
     otherThing.center = CGPointMake(otherThing.center.x - .5, otherThing.center.y - 5.35); 
      x = x - .5; 
      y = y - 5.35; 
     } 
     else ((x < 0) && (y < 0)); { 
      [self levelOneDefault]; 
     // EVIL WARNING IS RIGHT HERE IN THE ELSE PART 
     } 
    } 
+2

Для проверки равенства необходимо использовать == (т.е. два знака равенства), поэтому вы получаете Ошибка. Кроме того, ваш код не будет работать так, как вы ожидаете в данный момент. – Fogmeister

+0

всегда простые вещи haha ​​спасибо – PICKme

+0

Избавьтесь от точки с запятой в конце строки 'else'. – rmaddy

ответ

0

Для проверки равенства необходимо использовать == (т.е. два знака равенства), поэтому вы получаете сообщение об ошибке. Кроме того, ваш код не будет работать так, как вы ожидаете в данный момент.

Как уже упоминалось, другие.

Вместо использования if(someBool == YES) просто используйте if(someBool). И вместо if(someBool == NO) просто используйте if(!someBool).

Причины он не будет работать на данный момент, потому что (я думаю, но не 100% на этом) if(someBool = NO) будет первым установить someBool на NO, а затем оценить состояние, которое всегда будет if(NO), который никогда не войдет в блоке.

думаю. Но я не уверен в этом, так как я его не тестировал.

+2

Вы не должны делать 'if (someBool == YES)'. Просто сделайте 'if (someBool)'. – rmaddy

+0

и 'if (! SomeBool)' вместо '== NO'. – Sulthan

+0

Почему в данный момент это не работает, как ожидалось? – PICKme

0

Вы можете также использовать как и без проверки == оператора, и это будет более быстрее: -

if ((isLevel) && (isLevelOne)) 
Смежные вопросы