je les 2 fonctions suivantes ajouter et supprimer des contrôleurs de vue de l'enfant déclenchés à partir d'un contrôleur de vue conteneur:Comment animer les contrôleurs de vue enfant lors de l'ajout/de la suppression d'un contrôleur de vue de conteneur?
@discardableResult func addChildViewController(withChildViewController childViewController: UIViewController) -> UIViewController {
// Add Child View Controller
addChildViewController(childViewController)
childViewController.beginAppearanceTransition(true, animated: true)
// Add Child View as Subview
view.addSubview(childViewController.view)
// Configure Child View
childViewController.view.frame = view.bounds
childViewController.view.autoresizingMask = [.flexibleWidth, .flexibleHeight]
// Notify Child View Controller
childViewController.didMove(toParentViewController: self)
return childViewController
}
@discardableResult func removeChildViewController(withChildViewController childViewController: UIViewController) -> UIViewController {
// Notify Child View Controller
childViewController.willMove(toParentViewController: nil)
childViewController.beginAppearanceTransition(false, animated: true)
// Remove Child View From Superview
childViewController.view.removeFromSuperview()
// Notify Child View Controller
childViewController.removeFromParentViewController()
return childViewController
}
Les fonctions ci-dessus sont des extensions à UIViewController, donc tout ce que je fais est self.addChildViewController() et self.removeChildViewController() sur le contrôleur de vue parent. Comment puis-je animer la vue supprimée en cours de sortie et la vue en cours d'ajout?
Avez-vous plusieurs contrôleurs enfants et essayez de passer d'une personne à une autre ou seulement une seule? –
J'ai plusieurs contrôleurs de vue enfants, mais à un moment donné, j'en ajoute un et j'enlève le dernier. –
Quelle animation voulez-vous quand le contrôleur de vue enfant est ajouté? –