我正在尝试创建两个子视图(view1和view2)之间的过渡效果。当按下按钮时,我希望view1(前面)翻转并显示view2(背面)。我已经尝试了transitionFromView和transitionWithView。每个都有效,但都存在问题。
transitionFromView - 翻转父视图(整个窗口视图翻转,而不是子视图)。当进行翻转时,一个子视图在翻转前处于父视图的前面,另一个子视图在翻转的背面 - 这正是应该的。但我不想翻转父视图,只想翻转子视图。
transitionWithView - 只翻转子视图 - 但“to”视图在过渡发生之前就会显示出来。
有人有建议吗?
-(IBAction) button1action:(id) sender {
if ([sender tag] == 0) {
[UIView transitionFromView:view2 toView:view1 duration:2.0
options:UIViewAnimationOptionTransitionFlipFromLeft
completion:nil];
}
else {
[view1 removeFromSuperview];
[self.view addSubview:view2];
[UIView transitionWithView:view2
duration:2.0
options:UIViewAnimationOptionTransitionFlipFromRight +
UIViewAnimationOptionShowHideTransitionViews
animations:^{}
completion:nil];
}
}