首页 > 解决方案 > UITabBar 项目确实选择没有在 swift 5 中调用

问题描述

我在 swift 5 中使用过 tabbar 。但是当我点击标签栏项目时,标签栏没有选择项目没有调用。但我没有使用TabbarViewController。我在我的 viewController 中使用了下面的代码。

class ViewController: UIViewController,UITabBarDelegate {

 @IBOutlet weak var bottomTab: UITabBar!

  override func viewDidLoad() {
     super.viewDidLoad()
     bottomTab.delegate = self
  }

 func tabBar(tabBar: UITabBar, didSelectItem item: UITabBarItem) {
      print("Selected item")
   }

 }

请帮我从 viewController 调用 didSelectItem

标签: swift

解决方案


1)在你的ViewController继承UITabBarControllerDelegate

2) 在 vi​​ewDidLoad 中设置委托

3) 添加功能

例子:

class ViewController: UIViewController, UITabBarControllerDelegate {

   func tabBarController(_ tabBarController: UITabBarController, didSelect viewController: UIViewController) {
        let tabBarIndex = tabBarController.selectedIndex
        if tabBarIndex == 0 {
            //do your stuff
        }
   }

   override func viewDidLoad() {
        super.viewDidLoad()
        self.tabBarController?.delegate = self
   }

}

推荐阅读