하위 레이어로 구성된 UIView
은 여러 레이어 (주로 CAShapeLayers
, 소수는 CATextLayers
)로 구성되어 있습니다. I가 가진 문제는이 애니메이션 블록 (beginAnimations
, commitAnimations
)를 사용 UIView
크기 조정 및 의 부층 재 레이아웃 layoutSubviews
재정의 애니메이션이면 층이 UIView
와 애니메이션 아니라는 것이다. 그래서 문제가 뷰가 제대로 애니메이션하지만 서브 레이어가 아닌된다는 점이다UIView 및 하위 레이어 애니메이션
miniView.backgroundColor = [UIColor orangeColor];
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:1.0f];
[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
[UIView setAnimationRepeatCount:MAXFLOAT];
[UIView setAnimationRepeatAutoreverses:YES];
miniView.frame = newFrame;
[UIView commitAnimations];
:
는 아래UIView
의 프레임 애니메이션을 내 코드입니다. 보기가 커지고 축소되는 것을 볼 수 있지만 하위 레이어는 즉시 커지고 새로운 큰 크기로 유지됩니다. 보기 크기를 조정할 때보기의 하위 계층 크기를 조정하는 가장 좋은 방법은 무엇입니까? 그리고 부모 뷰를 사용하여 같은 방식으로 애니메이션을 만드는 방법은 무엇입니까?
답변을 찾으셨습니까? 나는 노아와 똑같은 문제가있다. Brandon에서 제공하는 솔루션은 하위 레이어를 애니메이션 중에 새로운 크기로 실제로 다시 그리는 대신 레이어의 일부로 확장 한 이후로 약간 다릅니다. –