2011-12-26 2 views
0

Так что я хотел изучить переходные анимации с блоками. Поэтому я пошел в документацию на яблоко и взял пример анимации, используя old method (without blocks). Я взял фрагмент кода (небольшая модификация) и протестировал его. Он отлично работаетUIView transistionWithAnimation не работает

[UIView setAnimationDelegate:nil]; 
[UIView beginAnimations:nil context:nil]; 
[UIView setAnimationDuration:kTransitionDuration]; 
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight 
           forView:self.view 
           cache:YES]; 

if ([self.instructionsView superview]) { 
    [self.instructionsView removeFromSuperview]; 
    [self.view addSubview:contentView]; 
} else { 
    [self.contentView removeFromSuperview]; 
    [self.view addSubview:instructionsView]; 
} 

[UIView commitAnimations]; 

// adjust our done/info buttons accordingly 
if ([instructionsView superview]) { 
    self.navigationItem.rightBarButtonItem = doneButton; 
} else { 
    self.navigationItem.rightBarButtonItem = flipButton; 
} 

Теперь ниже код моя попытка преобразовать код сверху в код с блоками

[UIView transitionWithView:self.view duration:kTransitionDuration options:UIViewAnimationTransitionFlipFromRight animations:^{ 
     if ([self.instructionsView superview]) { 
      [self.instructionsView removeFromSuperview]; 
      [self.view addSubview:contentView]; 
     } else { 
      [self.contentView removeFromSuperview]; 
      [self.view addSubview:instructionsView]; 
     } 
} completion:^(BOOL finished){ 

     if ([instructionsView superview]) { 
      self.navigationItem.rightBarButtonItem = doneButton; 
     } else { 
      self.navigationItem.rightBarButtonItem = flipButton; 
     } 
}]; 

Из того, что я могу понять, что ниже код должен работать. Я тестирую это на iOS 4.2, который поддерживает блоки. Однако это не кажется оживленным, и я не понимаю, почему это так. Он меняет вид, просто не оживляет. Пожалуйста помоги.

ответ

0

Попробуйте заменить переходWithView с переходомToView: fromView

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