我的主窗口中有一个UITabController,并希望在选择每个选项卡时添加一些逻辑。我已经将委托添加到头文件中:
@interface MyAppAppDelegate : NSObject <UIApplicationDelegate, UITabBarDelegate> {
我有一个选项卡更改事件的方法:
- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item{
//some code
}
但是没有调用didSelectItem方法中的代码。我已经将UITabBarController的委托连接到IB中的AppDelegate。我还有什么需要做的吗?
最佳答案
如果通过IB分配委托,则应将TabBar的委托(而不是TabBarController)连接到应用程序委托。
实际上,您不是在寻找 UITabBarControllerDelegate
,而是在寻找 UITabBarDelegate
。
如果您以编程方式执行此操作,则从选项卡栏控制器viewDidLoad
执行:
self.tabBar.delegate = [UIApplication sharedApplication].delegate;