2011-11-30 37 views
0

我想在每次在我的应用程序中按下标签栏中的选项卡时运行方法。我该怎么做呢?我的故事板中有一个标签栏控制器(当我在创建项目时选择标签栏应用程序时构建)。每次从标签栏中按下制表符时,如何执行方法?

例如,我想在每次按下标签按钮时打印'tab按钮到控制台。

我试图在应用程序委托没有任何的运气添加此:

- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item{ 

    NSLog(@"Tab Button Pressed"); 

} 

这可能是很简单,但我失去了一些东西。

回答

1

如果您正在使用的Xcode 4.2.x版则在代码中设置了UITabBarControllerappDelegate

self.tabBarController = [[[UITabBarController alloc] init] autorelease]; 
self.tabBarController.delegate = self; //<---- Add this line 
self.tabBarController.viewControllers = [NSArray arrayWithObjects:viewController1, viewController2, nil]; 
self.window.rootViewController = self.tabBarController; 

如果你有一个老式的项目或再使用界面生成器内置的结构模板:

  1. 右键点击对象Tab bar controller查看
  2. 找到delegate出口
  3. delegate出口连接到File's Owner

enter image description here enter image description here

+0

多么美妙的答案。我从这篇文章中学到了很多东西,谢谢!我的第一个应用程序将立即在商店中。 –

2

您是否已将视图控制器设置为选项卡栏的代表?

+0

啊,不,那声音就像是我想要的,虽然。我是用IB还是使用代码? –

+0

你也可以做。代码的简单 - myTabView.delegate = self; (自我是你的视图控制器) – tarmes

+0

我卡住了。标签栏控制器是在我启动应用程序时选择标签栏项目时构建的。将视图控制器设置为委托是什么意思? –

相关问题