Swift UITabBarItem 作为 UIButton

Swift UITabBarItem as a UIButton

我尝试实现 UITabBar,但现在我无法在选择项目时从方法中检索回调。因此是否有可能只创建一个 @IBAction func ?或者我需要做其他事情吗?

您的视图控制器应符合 UITabBarDelegate 并实现:

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

当用户选择一个选项卡(即 UITabBarItem)时调用此方法。

我终于解决了这个问题。我在使用 Delegator-class 和普通 class 时遇到了一些麻烦。 这解决了我的问题:主控制器中的 tabBar.delegate = selfclass

为了实现 UITabBar 按钮,您的视图控制器应该符合 UITabBarDelegate 协议。您需要实施:

Swift:

func tabBar(_ tabBar: UITabBar, didSelectItem item: UITabBarItem!)

Objective-c:

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

您还需要在 ViewController

的 viewDidLoad 中设置委托 (tabBar.delegate = self)

编辑:Swift 3 个回答:

func tabBar(_ tabBar: UITabBar, didSelect item: UITabBarItem) {

}