I suspect that menuVC is dealocated, and only its view exist on screen, that may be the problem why delegates did not work. You can make the menuVC a strong property on your view controller, so it will not be dealocated when your method is finished.
Or better set your menuVC as child controller
self.addChildViewController(menuVC)
1
solved ios delegate and scrollView Invalid