每次用户更改选项卡时,对于所选选项卡,我想将其推送到顶级控制器。我已经实现了Tabbarcontroller的委托方法,如下所示:
- (void) tabBarControler:(UITabBarController *)tabBarController didSelectViewController:(UIViewController*)viewController{
[[self navigationController] popToRootViewController Animated:NO];
}
这似乎没有用,但我可以确认每次更改标签时都会调用该方法
答案 0 :(得分:0)
根据您的代码,它看起来像一个简单的拼写错误。正确的方法是[[self navigationController] popToRootViewControllerAnimated:NO]
(你有一个额外的空间)。此外,tabBarController拼写错误,这将阻止调用该方法。
如果这不起作用,[self navigationController]
可能是错误的(取决于你从哪里调用方法)。如果你是从AppDelegate打来的,那应该是[tabBarController.selectedViewController.navigationController popToRootViewControllerAnimated:NO]
。希望有所帮助。