Flickering animation with UIViewAnimationTransitio

2019-06-14 11:00发布

I have a containerview with 2 subviews. I want to flip from one to another. The problem is that some kind of flickering appears. It doesn't happen on the iPhone 3GS, but on the Simulator and the iPhone 3G: http://www.hanspinckaers.com/upload/Flickering.png

Does anyone know why this happens?

This is the code:

[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration: 0.75];
[UIView setAnimationDidStopSelector:@selector(afterAnimationProceed)];
[UIView setAnimationDelegate:self];
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:self.containerView cache:YES];

if(self.mapViewController.view.superview){      
    [self.mapViewController.view removeFromSuperview];
    [self.containerView addSubview:self.tableController.view];
} else {
    [self.tableController.view removeFromSuperview];
    [self.containerView addSubview:self.mapViewController.view];
}


[UIView commitAnimations];

Thanks in advance!

Hans

2条回答
戒情不戒烟
2楼-- · 2019-06-14 11:20

I can't reproduce your problem but I do get issues if the tableview or mapview is scrolling when the transition starts.

Perhaps disabling user interaction and stopping any scrolling etc just before doing the transition will help?

Apart from that, sorry!

Sam

查看更多
We Are One
3楼-- · 2019-06-14 11:30

fyi flickering usually happens when you have 2+ seperate caanimations working, try to put them all into a single animation block and commit the groups animations.

查看更多
登录 后发表回答