我在tabbar中有3个viewcontroller。我从appdelegate加载tabbar。现在我想在用户从tabbar更改viewcontroller时创建一个事件。为此,我在appdelegate中编写了委托方法didselectitem,并在我的viewcontroller中设置了委托。但是没有调用委托方法。
在我的viewcontroller中,我正在写这个:
- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item{
NSLog(@"tabbar is %@",tabBar.selectedItem);
}
在viewdidload中:
MyAppDelegate.tabBar.delegate=self;
答案 0 :(得分:2)
确保设置UITabBarController
的代理,而不是标签栏本身。另外,请确保实现正确的委托方法:tabBarController:didSelectViewController: