我有一个public function contactusAction() {
$categories = $this->forward('ProductBundle:Product:categorie');
return $this->render('ProductBundle:Default:contactus.html.twig', array('categories'=>$categories));
}
和一个TabBarController
...主NavigationController
有一些按钮,我想在这些按钮上添加边框...正在TabController
中这样做,但是它不叫!当我转到子控制器并单击“返回”按钮时,它现在被称为..但是当第一次单击该选项卡时未被调用!
这是在主选项卡vc中执行的操作:
ViewDidAppear
但这不会被调用,直到我从孩子那里单击回来……但是当第一次单击选项卡时,它将不会被调用!
为什么?以及如何解决这个问题?
答案 0 :(得分:0)
我也多次遇到这个问题,请确保您没有在子类中调用任何错误的超类方法,例如,在您的viewWillAppear中,您没有调用viewDidAppear方法。或相反亦然。 这是编译器未定义的行为。它主要发生在父子view_controller的层次结构中。
对于您的解决方案,您可以从viewWillAppear中执行代码,而延迟很小。
答案 1 :(得分:0)
我找到了解决方法..
我刚刚添加了以下内容:
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
}
在导航控制器中,此问题已解决! :)