swfit 3.0 自定义navigation barItem

第一步 创建


import UIKit


extension UIBarButtonItem{

//bool 的作用是 判断是否是跟视图  在UINavigationController中判断

    convenience init(title: String,target:AnyObject?, action: Selector, isback : Bool = false) {

        let btn: UIButton = UIButton(title: title, color: UIColor.red, imageName: "")

        if isback{

            let imagename = "tabbar_discover"

            btn.setImage(UIImage.init(named: imagename), for: .normal)//图片显示

            btn.setImage(UIImage.init(named: imagename + "_highlighted"), for: .highlighted)//高亮状态

        }else{

            

        }

        btn.sizeToFit()//自动适应

        btn.addTarget(target, action: action, for: .touchUpInside)

        self.init(customView:btn)   

    }

}

第二步 调用  可在  UINavigationController控制器调用  

extension WBDiscoverViewController{

    func  setUPUI()  {

        navigationItem.leftBarButtonItem = UIBarButtonItem.init(title: "自定义", target: self, action: #selector(backclick), isback :true)

        

    }

}


第三步 调用 在主界面中调用UINavigationController控制器


    //使用一个字典创建一个子控制器

    //return 返回子控制器

    fileprivate func addChildViewController(_ vc: UIViewController, title: String, imageName: String) {

        vc.title = title

        vc.tabBarItem.image = UIImage(named: imageName)

        //设置导航图片

        let nav = UINavigationController(rootViewController: vc)

        

        addChildViewController(nav)

        

        

    }


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值