2014-10-21 4 views
0

При щелчке по изображению в приложении и картинке вверху изображение всегда будет двигаться вниз отлично. Но когда изображение внизу, изображение не движется вверх. Несмотря на то, что он не перемещается, процесс все еще запущен, и он регистрируется, как если бы он был наверху. Я пробовал все, что умею, но вы видите что-то не так? Благодаря!!CGRectMake Не перемещает изображение (иногда)

- (void)imageTapped:(UITapGestureRecognizer *) gestureRecognizer 
{ 
    NSLog(@"imageTapped"); 

    [UIView beginAnimations:@"move" context:nil]; 
    [UIView setAnimationDuration:0.3]; 

    if (self.imgV.frame.origin.y == 20) { 

     NSLog(@"Top"); 

     upOrDown = @"1"; 


     self.invalidateTheTimer = @""; 
     timer = [NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(updateLabel) userInfo:nil repeats:YES]; 

     self.imgV.frame=CGRectMake(0, self.view.frame.size.height-self.imgV.frame.size.height, self.imgV.frame.size.width, self.imgV.frame.size.height); 
     self.vBottom.frame=CGRectMake(0, self.imgV.frame.origin.y+self.imgV.frame.size.height, self.vBottom.frame.size.width, self.vBottom.frame.size.height); 

    } else if (self.imgV.frame.origin.y >= 507) { 

     NSLog(@"Bottom"); 


     self.imgV.frame=CGRectMake(0, 20, self.imgV.frame.size.width, self.imgV.frame.size.height); 
     self.vBottom.frame=CGRectMake(0, self.imgV.frame.origin.y+self.imgV.frame.size.height, self.vBottom.frame.size.width, self.vBottom.frame.size.height); 



     [hour setText:@""]; 
     [minute setText:@""]; 
     [second setText:@""]; 

     [timer invalidate]; 
     self.invalidateTheTimer = @"INVALIDATE"; 



    } 

     NSLog(@"%f", self.imgV.frame.origin.y); 
    [UIView commitAnimations]; 

} 

ответ

0

Учитывая вас не отправил весь свой код, это трудно понять, что именно не так, но, глядя на беспорядок, вы сделали, я предлагаю вам взглянуть в block based animations, который должен упростить то, что вы» повторять попытку выполнить.

Кроме того, если бы я должен был догадаться, я бы сказал, что проблема в вашем таймере, и любой метод, который он вызывает, вероятно, возится с вашими анимациями.

Смежные вопросы