2013-10-10 4 views
0

У меня есть способ анимировать и сбросить представление, которое приведено ниже.UIView Animation не работает должным образом в IOS 7

-(void)animateToFocus:(BOOL)animate index:(NSInteger)index { 
    if (animate) { 
     [UIView beginAnimations:@"Scroll" context:nil]; 
     [UIView setAnimationDuration:0.5]; 
     [UIView setAnimationDelegate:self]; 
     [UIView setAnimationsEnabled:YES]; 
     self.view.frame = CGRectMake(0, -50*index, self.view.bounds.size.width, self.view.bounds.size.height); 
     [UIView commitAnimations]; 

    } else { 
     [UIView beginAnimations:@"Scroll" context:nil]; 
     [UIView setAnimationDuration:0.5]; 
     [UIView setAnimationDelegate:self]; 
     [UIView setAnimationsEnabled:YES]; 
     self.view.frame = CGRectMake(0, 0, self.view.bounds.size.width, self.view.bounds.size.height); 
     [UIView commitAnimations]; 
    } 

} 

Когда я пройти ДА и тэг в этом методе, он будет анимировать наверх и когда я передать NO будет сбросить вид. Он отлично работает в IOS6.Когда я обновляюсь до IOS 7, сброс выполняется как: enter image description here

Он не будет анимировать fullley, и черное пространство появится внизу. Можете ли вы, пожалуйста, помочь мне решить эту проблему?

ответ

0

Я предполагаю, что это UITableView внутри?

Если да, то вы не должны анимировать это кадр, вы должны использовать:

– scrollToRowAtIndexPath:atScrollPosition:animated: 

или:

– scrollToNearestSelectedRowAtScrollPosition:animated: 
Смежные вопросы