홈>
내 응용 프로그램에서
override func viewDidLayoutSubviews()
에서 뷰를 아래에서 위로 애니메이션으로 만들고 싶습니다.
. 지금 까지이 방법을 수행하여 뷰를 맨 아래에서 전달했지만 다른 장치에서는 다른 UI를 표시합니다. UIView 전환이 작동하지만보기가 아래쪽에서 완전히 전환되지 않고 iPhone XS가 필요합니다. 지금까지이 두 가지 방법을 수행했습니다.
첫 단계:
let currentFrame = self.animationVIew.frame
self.animationVIew.frame = CGRect(x: 0, y: self.view.frame.height, width: currentFrame.size.width, height: currentFrame.size.height)
UIView.animate(withDuration: 1.0) {
self.animationVIew.frame = currentFrame
self.loadViewIfNeeded()
}
두 번째 단계:
UIView.transition(with: animationVIew,
duration: 0.5,
options: [.transitionFlipFromBottom],
animations: {
},
completion: nil)
그러나 두 가지 방법 모두 동일한 문제에 직면하고 있습니다. 운이 없어 !!
- 답변 # 1
관련 질문
- ios : UIAlertController에 커스텀 UIView 추가하기
- 선택기 UIView.endEditing이 UIBarButtonItem과 충돌하지만 UITapGestureRecognizer Swift 5에서는 작동합니다.
- ios : 셀에서 UIView로 데이터를 전달할 수 없습니다.
- swift : 콘텐츠 보기 및 UIImageView가 있는 자동 레이아웃 UIScrollView의 크기가 제대로 조정되지 않음
- UIView.animate를 사용하여 SwiftUI 보기 애니메이션화하기
- ios : 아래쪽 또는 위쪽이 없는 UIView 둥근 테두리
- ios : UIViewRepresentable에서 updateUIView가 호출된 후 UIView가 업데이트되지 않음
- arrays : swift5 및 xcode 10 배열에 다중 uiview 추가
- ios : UIPanGestureRecognizer, UIRotationGestureRecognizer 및 UIPinchGestureRecognizer 동시 인식
내가 실수로 그것을 해결하기 위해 올바른 방식으로 생각하지 않았다. 방금 현재
autolayout
를 변경했습니다. 이 문제는animationView
간의 제약으로 인해 발생했습니다. 그리고topView
. 이 두 뷰 사이의 거리 제약이 해결되었으므로 애니메이션이 발생할 때animationView
크기를 조정 한 이유 내 솔루션은 애니메이션 뷰 높이 제약 조건을 고정시키고 우선 순위를 변경했습니다.required
로low
간의 거리 제한 그리고animationView
스토리 보드에서topView