Я хочу создать анимацию между двумя видами, и вот что я сделал:
Оба вида, содержащие одинаковые scrollView
, и цель анимации между видами состоит в создании анимации между краямиscrollView.
Итак, вот что я сделал:
UIView *view1;
UIView *view2;
view1 = [[UIView alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height)];
view2 = [[UIView alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height)];
self.scrollView1 = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, 320)];
self.scrollView1.pagingEnabled = YES;
self.scrollView1.delegate = self;
[view1 addSubview:scrollView1];
[self.view addSubview:view1];
И когда scrollView
достигает последнего кадра:
- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView
{
//here I verify when the last frame of the scrollView is loaded
if (self.scrollView1.contentOffset.x == self.view.frame.size.width*pathImages.count)
{
[view1 removeFromSuperview];
[self.scrollView1 scrollRectToVisible:CGRectMake(self.view.frame.size.width,0 ,self.view.frame.size.width, self.view.frame.size.height) animated:NO];
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:1.0];
[UIView setAnimationTransition:UIViewAnimationOptionCurveEaseInOut forView:view2 cache:YES];
[view2 addSubview:scrollView1];
[self.view addSubview:view2];
[UIView commitAnimations];
}
}
Дело в том, чтоscrollView загружается снова с первой позиции (как и должно быть), но без анимации - просто появляется внезапно.Может кто-нибудь сказать мне, где ошибка и решение для этого. Спасибо:)