我想在显示另一个 View 之前执行一些代码,当用户在标签栏 Controller 中推送具有不同 View 的栏项时。
我正在尝试在我的类(class)中使用委托(delegate):
@interface HPAAddCarOverallInfoTableViewController ()
我通过使用委托(delegate)方法接近了我的问题:
-(void)tabBarControllerUITabBarController *)tabBarController didSelectViewControllerUIViewController *)viewController
不幸的是,(UIViewController *)viewController
包含有关所选 View Controller 的信息,而不是有关从哪个 View Controller 中选择它的信息。
问题: 你能告诉我吗,拜托。如何获取信息,这些信息将告诉我从哪个显示 View 中推送了标签栏项?
您可以实现 -tabBarController:shouldSelectViewController:
在您的标签栏 Controller 委托(delegate)中。您将在实际选择新 View Controller 之前收到该消息,因此您可以找出 当前 选择了哪个 View Controller ,也许将其保存在 ivar 或其他东西中。也许你可以用那个方法做你需要做的工作,或者你可能会等到 ...didSelectViewController:
消息,但无论哪种方式,你都会知道旧的和新的 View Controller .
关于ios - 标签栏 Controller : executing code before switching view,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26785260/
欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) | Powered by Discuz! X3.4 |