UI控件

模拟一个新浪微博

class ZFTabBarController: UITabBarController {

    override func viewDidLoad() {
        super.viewDidLoad()

    }

    //注意,修改tabBar的样式应该在viewWillAppear中修改,如果在viewDidLoad修改,在执行viewWillAppear会全部还原默认样式
    override func viewWillAppear(_ animated: Bool) {
        super.viewWillAppear(animated)
        //遍历所有的TabBar的item
        //除过第三个(下标2)按钮屏蔽,其他均可点击
        var index = 0
        for item in tabBar.items!
        {
            print(index)

            item.isEnabled = index != 2
            index += 1

            item.image?.withRenderingMode(.alwaysOriginal)
            item.selectedImage?.withRenderingMode(.alwaysOriginal)
        }

        //自定义一个中间按钮,并添加点击事件
        let publishBtn = UIButton.init()
        publishBtn.setImage(UIImage.init(named: "tabbar_compose_icon_add"), for: .normal)
        publishBtn.setImage(UIImage.init(named: "tabbar_compose_icon_add_highlighted"), for: .highlighted)
        publishBtn.setBackgroundImage(UIImage.init(named: "tabbar_compose_button"), for: .normal)
        publishBtn.setBackgroundImage(UIImage.init(named: "tabbar_compose_button_highlighted"), for: .highlighted)
        publishBtn.frame = CGRect(x:0,y:0,width:64,height:44)
        publishBtn.center = tabBar.center
        view.addSubview(publishBtn)
        publishBtn.addTarget(self, action: #selector(ZFTabBarController.centerBtnClick), for: .touchUpInside)
    }

    func centerBtnClick() {
        print("点击了中间的按钮")
    }
}

results matching ""

    No results matching ""