所以这就是我想要发生的事情。我有很多标签栏项目,我有一个特定的项目,说“共享”。当用户点击它时,会弹出一个共享屏幕,而不是我点击该项目并查看该项目页面上的内容。TableViewController代表没有被调用
为了简单起见,我想要一个动作,当我点击标签栏图标时被调用。所以,我看这件事,发现这个委托:
- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item
在此代表我想一些事情发生,比如,的NSLog(@“东西”) 但这种委托不会被调用。我已经在.h中设置了委托,并且已经将这些代码放入了我的TableViewController .m和我的DisplayViewController.m中.h都有委托集。我不知道为什么它没有被调用,但我会把我的代码放在这里解释。
- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item
{
if(item.tag == 5)
{
NSLog(@"Something");
}
}
,并在我的.h:
@interface PhotosTableViewController : UITableViewController <UITabBarControllerDelegate, UITabBarDelegate>
您是否将标签栏的代表设置为实例化委托协议和方法的对象? – 2013-03-14 23:50:58
NSLog(@“Something”)编码正确。我只是忘了添加“在问题 – doc92606 2013-03-14 23:51:03
的问题末尾使用UITabBarController或UITabBar?为其设置了一个代理? – 2013-03-14 23:53:05