내가 조금 붙어있는 비정상적인 동작이 발생했습니다. 문제는 다음과 같습니다.버튼을 처음 누르는 순간 segue의 맞춤 애니메이션이 재생되지 않습니다.
저는 4 슬라이드를 실행 화면으로 사용하기 위해 BWWalkthrough 라이브러리를 사용하고 있습니다. 여기
let storyboard = UIStoryboard(name: "SlidesFlow", bundle: nil)
let walkthrough = storyboard.instantiateViewController(withIdentifier: "SlidesView") as! BWWalkthroughViewController
let page_zero = storyboard.instantiateViewController(withIdentifier: "page_1")
let page_one = storyboard.instantiateViewController(withIdentifier: "page_2")
let page_two = storyboard.instantiateViewController(withIdentifier: "page_3")
let page_three = storyboard.instantiateViewController(withIdentifier: "page_4")
walkthrough.delegate = self
walkthrough.addViewController(page_zero)
walkthrough.addViewController(page_one)
walkthrough.addViewController(page_two)
walkthrough.addViewController(page_three)
모든 것이 의도 한대로 작동하므로 아무 문제 : 그래서 내 AppDelegate에에서 나는 viewcontrollers를 초기화 다음과 같은 코드가 있습니다. 의 ViewController의 page_three에 나는 사용자 정의 SEGUE 애니메이션 이제
class sentSegueFromRight: UIStoryboardSegue {
override func perform()
{
let src = self.source as UIViewController
let dst = self.destination as UIViewController
src.view.superview?.insertSubview(dst.view, aboveSubview: src.view)
dst.view.transform = CGAffineTransform(translationX: src.view.frame.size.width, y: 0)
UIView.animate(withDuration: 0.25,
delay: 0.0,
options: UIViewAnimationOptions.curveEaseInOut,
animations: {
dst.view.transform = CGAffineTransform(translationX: 0, y: 0)
},
completion: { finished in
src.present(dst, animated: false, completion: nil)
}
)
}
}
를 사용하여 다른 뷰 컨트롤러에 저를 리디렉션 버튼이 문제입니다, 나는 보통의 ViewController에있는 버튼 및 애니메이션 작업없이이 동일한 코드를 사용하는 경우 문제. 문제는 내 BWWalkthrough의 마지막 슬라이드에서 위에 정의 된 segue를 사용할 때입니다. 버튼을 처음봤을 때 나타나는 viewcontroller는 나타나지만 대응하는 애니메이션은 나타나지 않습니다. 분리 된 뷰 컨트롤러에 뷰 컨트롤러를 제시
내가 표준 애니메이션 버튼을 사용하는 경우 이
을 실망이다 : 그것을 닫고 버튼을 다시 애니메이션이 재생되지만 오류가 리턴됩니다에 테이핑 후 (내 사용자 정의 애니메이션 코드를 사용하지 않고) 오류가 발생하지 않고 기본 애니메이션이 재생됩니다.
이 문제에 대한 해결책을 찾지 못하는 것 같습니다. 아무도 이것과 같은 것을 우연히 발견하지 못했습니까?
나를 지적 해 주셔서 감사합니다. 말된다. – Netra