如何知道何时按下选项卡栏项(iOS)

如何知道何时按下选项卡栏项(iOS),ios,cocoa-touch,ios5,uikit,Ios,Cocoa Touch,Ios5,Uikit,我有2个视图控制器和一个在情节提要中创建的选项卡栏控制器 当按下相关选项卡栏时,是否可以在两个视图控制器中的任何一个中执行方法 我尝试了几种方法,但他们需要firstViewController或secondViewController上的nib名称如果我想初始化firstViewController的对象,通常firstViewController只是在启动时创建的 如果您能提供任何帮助,我将不胜感激。我对uitabcontroller应用程序代理略知一二,但我不知道如何将两个视图控制器连接到

我有2个视图控制器和一个在情节提要中创建的选项卡栏控制器

当按下相关选项卡栏时,是否可以在两个视图控制器中的任何一个中执行方法

我尝试了几种方法,但他们需要firstViewController或secondViewController上的nib名称如果我想初始化firstViewController的对象,通常firstViewController只是在启动时创建的


如果您能提供任何帮助,我将不胜感激。我对uitabcontroller应用程序代理略知一二,但我不知道如何将两个视图控制器连接到选项卡控制器

您可以在需要时使用uitabarcontrollerdelegate协议 增强选项卡栏的行为。特别是,您可以使用它来 确定是否应选择特定选项卡以执行操作 选择选项卡后,或在选项卡之前或之后执行操作 用户自定义选项卡的顺序。实施后, 方法,然后应将该对象分配给 对应的UITabBarController对象的委托属性

本协议中的所有方法都是可选的

参考资料:


您需要的应该是通过实施以下措施来实现的:

- (void)tabBarController:(UITabBarController *)tabBarController 
 didSelectViewController:(UIViewController *)viewController

查看
UITabViewController委托

您可以在需要时使用uitabarcontrollerdelegate协议 增强选项卡栏的行为。特别是,您可以使用它来 确定是否应选择特定选项卡以执行操作 选择选项卡后,或在选项卡之前或之后执行操作 用户自定义选项卡的顺序。实施后, 方法,然后应将该对象分配给 对应的UITabBarController对象的委托属性

本协议中的所有方法都是可选的

参考资料:


您需要的应该是通过实施以下措施来实现的:

- (void)tabBarController:(UITabBarController *)tabBarController 
 didSelectViewController:(UIViewController *)viewController

如果您正在使用故事板,请执行此操作

在didFinishLaunchingWithOptions中

UITabBarController *tabBar = (UITabBarController *)self.window.rootViewController;
[tabBar setDelegate:self];
然后

-(void) tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController
{
   //Write your code here
}

如果您正在使用故事板,请执行此操作

在didFinishLaunchingWithOptions中

UITabBarController *tabBar = (UITabBarController *)self.window.rootViewController;
[tabBar setDelegate:self];
然后

-(void) tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController
{
   //Write your code here
}