为什么不调用viewWillDisappear或viewDidAppear?

jam*_*one 7 iphone uiviewcontroller ipad ios

我有UINavigationController一个UITableView作为我的主菜单.用户单击一个单元格,并在堆栈上推送新视图.在一种情况下,我推另一个UITableView需要工具栏.所以在第二个tableView的init上我self.toolbarItems用正确的项设置了属性.但是我需要调用[self.navigationController setToolbarHidden:NO animated:YES];所以在viewDidAppear或者viewWillAppear方法中调用它是有意义的.但我把它放在那些方法中并找出(也是通过NSLog)它们永远不会被调用.将其隐藏在viewWillDisappear或中也是如此viewDidDisappear.为什么不调用这些方法?我应该在哪里隐藏/显示工具栏呢?

Ale*_*yne 18

我注意到行为,如果父控制器(如UINavigationControllerUITabBarController)永远不会被viewWill/DidAppear调用,它也不会在子控制器上调用它.因此,请确保在创建父控制器的代码中,调用viewWillAppear,显示,然后调用viewDidAppear.然后它应该适当地在它的子控制器上进行这些调用.

仔细检查父控制器是否正在调用这些方法,如果不是,请自行调用它们.