首页 > 解决方案 > 在标签栏标签上打开弹出视图在 iOS 中单击

问题描述

您好,我想在选项卡栏选项卡单击上打开弹出视图,但不希望将视图控制器作为该选项卡的根视图控制器,这里我有附加图像,请检查它以及任何可以帮助我的指针。

在标签栏上打开弹出视图单击

标签: iosswiftuitabbarcontrollertabbar

解决方案


子类化你tabbarController并使用它。您可以使用shouldSelect委托方法TabbarController来实现此功能。下面是如何做到这一点的指针代码。代码未经测试,因此根据您的需要进行转换

import UIKit

class TabBarController: UITabBarController, UITabBarControllerDelegate {

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

    func tabBarController(_ tabBarController: UITabBarController, shouldSelect viewController: UIViewController) -> Bool {
           let tabbarIndex = tabBarController.viewControllers!.index(of: viewController)!
                if  tabbarIndex == 5 {

                    let getCurrentView = tabBarController.selectedViewController!.view!

                    getCurrentView.addSubview(yourView)
                    getCurrentView.bringSubview(toFront: yourView)

                    return false
                } else {
                    return true
                }
        }
}

推荐阅读