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 = self
class
为了实现 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) {
}
我尝试实现 UITabBar
,但现在我无法在选择项目时从方法中检索回调。因此是否有可能只创建一个 @IBAction func
?或者我需要做其他事情吗?
您的视图控制器应符合 UITabBarDelegate
并实现:
- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item;
当用户选择一个选项卡(即 UITabBarItem
)时调用此方法。
我终于解决了这个问题。我在使用 Delegator-class 和普通 class 时遇到了一些麻烦。
这解决了我的问题:主控制器中的 tabBar.delegate = self
class
为了实现 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) {
}