我不是没有,如果有可能,但是这有一种方法可以像对待常规按钮click(action)一样对待选项卡栏项目单击?原因是:我的应用程序中有一个标签栏,对于大多数标签栏项目,触摸时都不会更改屏幕,但确实会更改 View 中显示的数据。似乎为此使用TabBarAppDelegate会有点麻烦...是否有更好的方法?
谢谢
最佳答案
最直接的方法是UITabBarDelegate。对不起。通过在类定义之后添加<UITabBarDelegate>
来实现您的类并继承协议(protocol),例如:
@interface MyViewController : UIViewController<UITabBarDelegate>
然后在该类中定义
tabBar:didSelectItem:
方法,例如- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item {
// Do Stuff!
// if(item.title == @"First") {...}
}
然后像下面这样在您的选项卡上设置委托(delegate):
myTabBar.delegate = myClassInstance
。 tabBar:didSelectItem:
方法可以在任何位置(包括您的 View Controller ),在该位置您将获得单击按钮的事件。更多信息在这里:http://developer.apple.com/library/ios/#DOCUMENTATION/UIKit/Reference/UITabBarDelegate_Protocol/Reference/Reference.html
关于iphone - 使用标签栏项设置 Action -iPhone,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7575430/