检测UITabBarController

时间:2018-10-03 22:42:18

标签: ios delegates uitabbarcontroller uitabbar

在点击项目时,标签栏控制器是否可以执行某种操作(例如委托)?

该操作仅在显示视图时执行一次,如果您反复按选项卡按钮,则不应执行。

我正在使用此委托,但由于每次我触摸选项卡时它都会启动(而不是仅在每次选项卡更改时才启动),所以它不能很好地工作

func tabBarController(_ tabBarController: UITabBarController, didSelect viewController: UIViewController) {
    print("Hey")
}

1 个答案:

答案 0 :(得分:1)

您可以尝试在shouldSelect旁边实现didSelect

func tabBarController(_ tabBarController: UITabBarController, 
              shouldSelect viewController: UIViewController) -> Bool {

    return tabBarController.viewControllers.index(of:viewController) != tabBarController.selectedIndex
}