I've got a UIView that gets used in a modal view using the UIModalTransitionStylePartialCurl transition style when it appears. This UIView includes a UIButton. The odd thing is that whenever the view appears, as the primary page peels up to the top of the window the button on the modal view animates itself, with the text seeming to get typed onto the button from the center of itself. The movement of this animation is a bit distracting.
Why does this happen? Is there any way to prevent it?
The UIButton does use a custom background, but it is defined in the XIB for the modal view and does not use any special subclass of my own. It is a standard button.
I had the same problem and the mentioned autoresizingMask code didn't work for me. Although it did give me some pointers in which direction I should look. Basically the view that will appear should be 'drawn' before being show to have it's initial placing. Before IOS 5 this was automatically done for the animation including the page-curl, but IOS 5 broke it. But adding the forced 'drawing' yourself at viewDidLoad solved it for me!
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view from its nib.
[self.view layoutIfNeeded];
}
Although in this post I offer my answer for this problem. The patch PHO offered later in this very thread is cleaner. Thank you PHO! :)
来源:https://stackoverflow.com/questions/8721430/uimodaltransitionstylepartialcurl-causing-uibutton-text-to-animate