Ole*_*anu 2 core-animation coverflow ios ios5
我最近更新了我的应用程序以使用iOS 5.0 SDK.在其中,我正在使用Alex Fajowski的OpenFlow封面流程实现.
我发现当我在iOS 5.0上运行应用程序时,OpenFlow正在进行不正确的转换或Z重新定位时,我浏览图像.
我可以做些什么来使OpenFlow在iOS 5.0 SDK上正常工作吗?
我对你所拥有的东西进行了改进,它确实使它顺利运行(以前的方式在iOS 4中).
在AfOpenFlowView.m中,而不是您在上面所述的内容(在-setUpInitialState中):
leftTransform = CATransform3DTranslate(CATransform3DIdentity, 0, 0, SIDE_COVER_ZPOSITION / 2.0);
leftTransform = CATransform3DRotate(leftTransform, SIDE_COVER_ANGLE, 0.0f, 1.0f, 0.0f);
rightTransform = CATransform3DTranslate(CATransform3DIdentity, 0, 0, SIDE_COVER_ZPOSITION / 2.0);
rightTransform = CATransform3DRotate(rightTransform, SIDE_COVER_ANGLE, 0.0f, -1.0f, 0.0f);
Run Code Online (Sandbox Code Playgroud)
里面-layoutCover:selectedCover:animated,放置以下代码:
CGFloat newZPosition = SIDE_COVER_ZPOSITION / 2.0;
Run Code Online (Sandbox Code Playgroud)
...
CABasicAnimation *zPositionAnimation = [CABasicAnimation animationWithKeyPath:@"zPosition"];
[zPositionAnimation setToValue:[NSNumber numberWithFloat:newZPosition]];
[zPositionAnimation setDuration:(animated ? .3 : 0.0)];
[zPositionAnimation setTimingFunction:[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut]];
[zPositionAnimation setRemovedOnCompletion:NO];
[zPositionAnimation setFillMode:kCAFillModeForwards];
Run Code Online (Sandbox Code Playgroud)
现在,而不是做:
aCover.layer.zPosition = newZPosition;
Run Code Online (Sandbox Code Playgroud)
替换为:
[aCover.layer addAnimation:zPositionAnimation forKey:nil];
Run Code Online (Sandbox Code Playgroud)
您可以有条件地启用,具体取决于它是在iOS 4还是5上运行.
最好,
归档时间: |
|
查看次数: |
2198 次 |
最近记录: |