ルートビュー内に単純なスクロールビューがあります。スクロールビューのサイズは、画面の幅/高さ全体を占めます。
スクロールビューのx軸で3D回転を実行した後、これはうまく機能しました。画面の下部にいくつかの奇妙なアーティファクトがあります。ルートビューに複製されたスクロールビューの一部のように。
ここに画面を添付:http: //imgur.com/WoMRFsx
画面の下部近くにある青/紫の縞模様に注目してください。
それを取り除く方法はありますか?それらはアニメーション中に表示されるため、アニメーションが機能しなくなった後の単純な画面の更新。
コードで更新:
CATransform3D transform = CATransform3DIdentity;
transform.m34 = 1.0f / -500.0f;
CATransform3D translation = CATransform3DTranslate(transform, 0.0, -20.0, 0.0);
CATransform3D finalTransform = CATransform3DRotate(translation, 45.0f, 1.0, 0.0, 0.0);
[viewImageScroll setClearsContextBeforeDrawing:YES];
[UIView animateWithDuration:3.0f delay:0.
options:(UIViewAnimationOptionCurveEaseInOut)
animations:^{
[viewImageScroll.layer setTransform:finalTransform];
} completion:^(BOOL finished) {
[viewImageScroll setClearsContextBeforeDrawing:YES];
CATransform3D transform = CATransform3DIdentity;
transform.m34 = 1.0f / -500.0f;
CATransform3D flyAway = CATransform3DTranslate(transform, 0., -7000., -10000.0);
flyAway = CATransform3DRotate(flyAway, 45.0f, 1.0, 0.0, 0.0);
[UIView animateWithDuration:2.0f delay:0.
options:(UIViewAnimationOptionBeginFromCurrentState | UIViewAnimationOptionOverrideInheritedCurve)
animations:^{
NSLog(@"done");
[viewImageScroll.layer setTransform:flyAway];
[viewImageScroll setAlpha:0];
} completion:^(BOOL finished) {
NSLog(@"done and done");
[(X1NavigationController *)self.navigationController popControllerWithTransition:UIViewAnimationTransitionCurlDown];
}];
}];