0
사용자가 버튼을 누를 때 UIView가 화면 맨 아래에서 슬라이드하는 UINavigationController가 있습니다.kCATransitionMoveIn을 사용하여 UIView에서 슬라이딩 할 때의 글리치
뷰의 "숨김"속성을 NO로 설정 한 직후에 애니메이션이 이미 끝난 것처럼 UINavigationController의보기가 한 프레임에 완전히 표시됩니다.
이
은/나타낸다 코드 뷰 숨겨이다- (void)showGUI: (bool)show
{
CATransition *transition = [CATransition animation];
transition.duration = 0.5;
transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
if (!show)
{
transition.type = kCATransitionReveal;
transition.subtype = kCATransitionFromBottom;
}
else
{
transition.type = kCATransitionMoveIn;
transition.subtype = kCATransitionFromTop;
}
[navController.view.superview.layer addAnimation:transition forKey:nil];
navController.view.hidden = !show;
}
사실이 아닙니다. – zrxq
이 경우 토글 숨김이 작동하지 않습니다. 이유를 제시하지 않았습니다. 내 솔루션이 작동하고 코멘트를 업데이트했습니다. 다음에 더 건설적이되도록 노력하십시오. – logancautrell
OP의 문제는 무엇인지 전혀 알지 못하지만 경험상 '숨겨진'전환은 'CATransition'으로 완벽하게 작동합니다. – zrxq