如何创建凸起的中心选项卡栏按钮

时间:2017-08-10 00:10:45

标签: swift uibutton uitabbarcontroller tabbar

我已经检查过很多GitHub和StackOverflow解决方案来创建一个凸起的中心标签栏按钮并尝试多次创建一个但我总是直接回到原点。

以下是我一直在做的步骤,如果有人能解决问题,我将非常感激。

  1. 创建一个标签栏控制器以导航到5个不同的视图控制器

  2. 为标签栏控制器创建了一个名为CustomTabBarController的自定义类

  3. 我的CustomTabBarController文件内是

  4. import UIKit
    
    class CustomTabBarController: UITabBarController {
    
      override func viewDidLoad() {
    
        super.viewDidLoad()
    
        setupMiddleButton()
       }
    
    func setupMiddleButton() {
        let menuButton = UIButton(frame: CGRect(x: 0, y: 0, width: 64, height:64))
    
        var menuButtomFrame = menuButton.frame
        menuButtomFrame.origin.y = view.bounds.height - menuButtomFrame.height
        menuButtomFrame.origin.x = view.bounds.width/2 - menuButtomFrame.size.width/2
        menuButton.frame = menuButtomFrame
    
        view.addSubview(menuButton)
    
        menuButton.setImage(UIImage(named: "MidPhoto"), for: .normal)
        menuButton.addTarget(self, action: #selector(menuButtonAction(sender:)), for: .touchUpInside)
    
        view.layoutIfNeeded()
        tabBarController?.tabBar.addSubview(menuButton)
    }
    
    @objc private func menuButtonAction(sender: UIButton) {
        selectedIndex = 2
    
    }
    
    
    
    
    
    }
    

    那就是它。我只编辑了1个文件(CustomTabBarController)并且它可以工作,但是图像出现在不需要的视图控制器中,我已经完成了多项操作,例如:隐藏推送底栏,self.tabBarController?.tabbar.isHidden = true等等。

    我该怎么做才能解决这个问题?

0 个答案:

没有答案