我也为此苦苦挣扎。要让 curl 来自右侧或左侧,您可以创建一个中间视图并对其进行转换。因此,假设您正在转换的视图 (myView) 是主窗口 (parentView) 的子视图:
-parentView
-->myView
您将在两者之间插入一个中间视图(在 Interface Builder 中很容易完成):
-parentView
-->containerView
--->myView
然后,使用以下代码将容器向左翻转 90 度,将过渡视图向右翻转 90 度:
containerView.transform = CGAffineTransformMakeRotation(-M_PI_2);
myView.transform = CGAffineTransformMakeRotation(M_PI_2);
myView 仍然会直立显示给用户,但过渡会认为它应用在距左侧 90 度的位置。
请注意,根据视图的自动缩放方式,您可能必须在应用变换后修复帧大小,例如
containerView.frame = CGRectMake(0.0, 0.0, 768.0, 1024.0);
myWebView.frame = CGRectMake(0.0, 0.0, 768.0, 1024.0);
希望这可以帮助。这是最接近 UIViewAnimationTransitionCurlLeft 和 UIViewAnimationTransitionCurlRight 的。